=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/skeyinit/skeyinit.c,v retrieving revision 1.1 retrieving revision 1.2 diff -c -r1.1 -r1.2 *** src/usr.bin/skeyinit/skeyinit.c 1995/10/18 08:46:08 1.1 --- src/usr.bin/skeyinit/skeyinit.c 1995/12/20 09:48:15 1.2 *************** *** 29,41 **** #define NAMELEN 2 int skeylookup __ARGS((struct skey * mp, char *name)); int main(argc, argv) int argc; char *argv[]; { ! int rval, n, nn, i, defaultsetup, l; time_t now; char hostname[MAXHOSTNAMELEN]; char seed[18], tmp[80], key[8], defaultseed[17]; --- 29,42 ---- #define NAMELEN 2 int skeylookup __ARGS((struct skey * mp, char *name)); + int skeyzero __ARGS((struct skey * mp, char *name)); int main(argc, argv) int argc; char *argv[]; { ! int rval, n, nn, i, defaultsetup, l, zerokey = 0; time_t now; char hostname[MAXHOSTNAMELEN]; char seed[18], tmp[80], key[8], defaultseed[17]; *************** *** 63,76 **** err(1, "Who are you?"); defaultsetup = 1; ! if (argc > 1) { ! if (strcmp("-s", argv[1]) == 0) defaultsetup = 0; ! else ! pp = getpwnam(argv[1]); ! ! if (argc > 2) ! pp = getpwnam(argv[2]); } if (pp == NULL) { err(1, "User unknown"); --- 64,78 ---- err(1, "Who are you?"); defaultsetup = 1; ! for (i=1; i < argc; i++) { ! if (strcmp("-s", argv[i]) == 0) defaultsetup = 0; ! else if (strcmp("-z", argv[i]) == 0) ! zerokey = 1; ! else { ! pp = getpwnam(argv[i]); ! break; ! } } if (pp == NULL) { err(1, "User unknown"); *************** *** 104,109 **** --- 106,115 ---- case -1: err(1, "cannot open database"); case 0: + /* comment out user if asked to */ + if (zerokey) + exit(skeyzero(&skey, pp->pw_name)); + printf("[Updating %s]\n", pp->pw_name); printf("Old key: %s\n", skey.seed); *************** *** 127,132 **** --- 133,142 ---- } break; case 1: + if (zerokey) { + printf("You have no entry to zero.\n"); + exit(1); + } printf("[Adding %s]\n", pp->pw_name); break; }