1 /* $DragonFly: src/lib/libskey/skey_getpass.c,v 1.2 2008/09/30 16:57:05 swildner Exp $ */
7 /* skey_getpass - read regular or s/key password */
10 skey_getpass(const char *prompt
, struct passwd
*pwd
, int pwok
)
17 /* Attempt an s/key challenge. */
18 sflag
= (pwd
== NULL
|| skeyinfo(&skey
, pwd
->pw_name
, buf
));
22 printf("(s/key required)\n");
25 pass
= getpass(prompt
);
27 /* Give S/Key users a chance to do it with echo on. */
28 if (!sflag
&& !feof(stdin
) && *pass
== '\0') {
29 fputs(" (turning echo on)\n", stdout
);
30 fputs(prompt
, stdout
);
32 fgets(buf
, sizeof(buf
), stdin
);