| plan 9 kernel history: overview | file list | diff list |
1993/0330/boot/userpasswd.c (diff list | history)
| 1992/0728/sys/src/9/boot/userpasswd.c:8,13 – 1993/0330/sys/src/9/boot/userpasswd.c:8,15 (short | long | prev | next) | ||
| 1992/0323 | extern char *sauth; | |
| 1992/0325 | #endif asdf | |
| 1992/0317 | ||
| 1993/0330 | char *homsg = "can't set user name or key; please reboot"; | |
| 1992/0317 | /* * get/set user name and password. verify password with auth server. */ | |
| 1992/0728/sys/src/9/boot/userpasswd.c:14,72 – 1993/0330/sys/src/9/boot/userpasswd.c:16,51 | ||
| 1992/0317 | void | |
| 1992/0318 | userpasswd(int islocal, Method *mp) | |
| 1992/0317 | { | |
| 1993/0330 | int fd; char *msg; char hostkey[DESKEYLEN]; | |
| 1992/0317 | if(*username == 0 || strcmp(username, "none") == 0){ strcpy(username, "none"); outin("user", username, sizeof(username)); } | |
| 1993/0330 | fd = -1; | |
| 1992/0507 | while(strcmp(username, "none") != 0){ | |
| 1992/0317 | getpasswd(password, sizeof password); | |
| 1992/0322 |
| |
| 1992/0317 |
| |
| 1993/0330 | passtokey(hostkey, password); | |
| 1992/0325 | fd = -1; | |
| 1992/0507 | if(islocal) break; | |
| 1992/0325 |
| |
| 1992/0317 |
| |
| 1993/0330 | msg = checkkey(mp, username, hostkey); if(msg == 0) | |
| 1992/0317 | break; | |
| 1993/0330 | fprint(2, "?%s\n", msg); | |
| 1992/0317 | outin("user", username, sizeof(username)); } | |
| 1993/0330 | if(fd > 0) | |
| 1992/0317 | close(fd); | |
| 1993/0330 | /* set host's key */ if(writefile("#c/key", hostkey, DESKEYLEN) < 0) fatal(homsg); /* set host's owner (and uid of current process) */ if(writefile("#c/hostowner", username, strlen(username)) < 0) fatal(homsg); close(fd); | |
| 1992/0317 | } | |