1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
|
#define XERR "sshcron"
#include "sshcron.ih"
// the passphrase
// by run.cc
void SSHCron::getPassphrase()
{
Tty tty;
tty.echo(Tty::OFF);
ifstream in;
Exception::open(in, "/dev/tty");
while (true)
{
cout << "Enter passphrase: " << flush;
getline(in, d_passphrase);
if (d_passphrase.length() < 10)
throw Exception{} <<
"\n"
"Error: passphrases must be at leas 10 characters long";
cout << "\nEnter same passphrase again: " << flush;
string passphrase2;
getline(in, passphrase2);
cout << endl;
if (d_passphrase == passphrase2)
break;
cout << "Passphrases differ. Try again\n\n";
}
tty.echo(Tty::ON);
}
|