version 1.25, 2002/02/16 21:27:50 |
version 1.26, 2002/06/28 22:28:17 |
|
|
void kbintr(int); |
void kbintr(int); |
|
|
int |
int |
local_passwd(uname, authenticated) |
local_passwd(char *uname, int authenticated) |
char *uname; |
|
int authenticated; |
|
{ |
{ |
struct passwd *pw; |
struct passwd *pw; |
login_cap_t *lc; |
login_cap_t *lc; |
|
|
} |
} |
|
|
char * |
char * |
getnewpasswd(pw, lc, authenticated) |
getnewpasswd(struct passwd *pw, login_cap_t *lc, int authenticated) |
struct passwd *pw; |
|
login_cap_t *lc; |
|
int authenticated; |
|
{ |
{ |
char *p; |
char *p; |
int tries, pwd_tries; |
int tries, pwd_tries; |
|
|
pw_error(NULL, 1, 1); |
pw_error(NULL, 1, 1); |
} |
} |
} |
} |
|
|
pwd_tries = pwd_gettries(pw, lc); |
pwd_tries = pwd_gettries(pw, lc); |
|
|
for (buf[0] = '\0', tries = 0;;) { |
for (buf[0] = '\0', tries = 0;;) { |
|
|
printf("That password collides with a system feature. Choose another.\n"); |
printf("That password collides with a system feature. Choose another.\n"); |
continue; |
continue; |
} |
} |
|
|
if ((tries++ < pwd_tries || pwd_tries == 0) |
if ((tries++ < pwd_tries || pwd_tries == 0) |
&& pwd_check(pw, lc, p) == 0) |
&& pwd_check(pw, lc, p) == 0) |
continue; |
continue; |
|
|
} |
} |
|
|
void |
void |
kbintr(signo) |
kbintr(int signo) |
int signo; |
|
{ |
{ |
char msg[] = "\nPassword unchanged.\n"; |
char msg[] = "\nPassword unchanged.\n"; |
struct iovec iv[5]; |
struct iovec iv[5]; |