start using err & c:o

git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@1526 ec53bebd-3082-4978-b11e-865c3cabbd6b
This commit is contained in:
Assar Westerlund
1997-03-30 16:52:32 +00:00
parent 6a51a28699
commit 49d054610e

View File

@@ -40,8 +40,6 @@
RCSID("$Id$"); RCSID("$Id$");
static char *prog;
#define USAGE_STRING \ #define USAGE_STRING \
"Usage: %s [-r] [-f alg] [-u user] num seed\n" \ "Usage: %s [-r] [-f alg] [-u user] num seed\n" \
" or -[d|l] [-u user]\n" \ " or -[d|l] [-u user]\n" \
@@ -62,14 +60,14 @@ static char *prog;
static void static void
help (void) help (void)
{ {
fprintf(stderr, USAGE_STRING HELP_STRING, prog); fprintf(stderr, USAGE_STRING HELP_STRING, __progname);
exit (0); exit (0);
} }
static void static void
usage (void) usage (void)
{ {
fprintf(stderr, USAGE_STRING, prog); fprintf(stderr, USAGE_STRING, __progname);
exit (1); exit (1);
} }
@@ -109,7 +107,7 @@ renew (int argc, char **argv, OtpAlgorithm *alg, char *user)
dbm = otp_db_open (); dbm = otp_db_open ();
if (dbm == NULL) { if (dbm == NULL) {
fprintf (stderr, "%s: otp_db_open failed\n", prog); warnx ("otp_db_open failed");
return 1; return 1;
} }
otp_put (dbm, ctx); otp_put (dbm, ctx);
@@ -130,7 +128,7 @@ verify_user_otp(char *username)
char prompt[128], ss[256]; char prompt[128], ss[256];
if (otp_challenge (&ctx, username, ss, sizeof(ss)) != 0) { if (otp_challenge (&ctx, username, ss, sizeof(ss)) != 0) {
fprintf(stderr, "%s: no otp challenge found\n", prog); warnx("no otp challenge found for %s", username);
return 1; return 1;
} }
@@ -157,10 +155,9 @@ set (int argc, char **argv, OtpAlgorithm *alg, char *user)
ctx.alg = alg; ctx.alg = alg;
ctx.user = strdup (user); ctx.user = strdup (user);
if (ctx.user == NULL) { if (ctx.user == NULL)
fprintf (stderr, "%s: Out of memory\n", prog); err (1, "out of memory");
return 1;
}
ctx.n = atoi (argv[0]); ctx.n = atoi (argv[0]);
strncpy (ctx.seed, argv[1], sizeof(ctx.seed)); strncpy (ctx.seed, argv[1], sizeof(ctx.seed));
ctx.seed[sizeof(ctx.seed) - 1] = '\0'; ctx.seed[sizeof(ctx.seed) - 1] = '\0';
@@ -177,9 +174,8 @@ set (int argc, char **argv, OtpAlgorithm *alg, char *user)
ctx.alg->next (ctx.key); ctx.alg->next (ctx.key);
db = otp_db_open (); db = otp_db_open ();
if(db == NULL) { if(db == NULL) {
fprintf (stderr, "%s: otp_db_open failed\n", prog);
free (ctx.user); free (ctx.user);
return 1; err (1, "otp_db_open failed");
} }
ret = otp_put (db, &ctx); ret = otp_put (db, &ctx);
otp_db_close (db); otp_db_close (db);
@@ -202,10 +198,8 @@ delete_otp (int argc, char **argv, char *user)
usage(); usage();
db = otp_db_open (); db = otp_db_open ();
if(db == NULL) { if(db == NULL)
fprintf (stderr, "%s: otp_db_open failed\n", prog); errx (1, "otp_db_open failed");
return 1;
}
ctx.user = user; ctx.user = user;
ret = otp_delete(db, &ctx); ret = otp_delete(db, &ctx);
@@ -226,7 +220,7 @@ has_an_otp(char *user)
db = otp_db_open (); db = otp_db_open ();
if(db == NULL) { if(db == NULL) {
fprintf (stderr, "%s: otp_db_open failed\n", prog); warnx ("otp_db_open failed");
return 0; /* if no db no otp! */ return 0; /* if no db no otp! */
} }
@@ -268,9 +262,7 @@ list_otps (int argc, char **argv, char *user)
db = otp_db_open (); db = otp_db_open ();
if(db == NULL) { if(db == NULL) {
fprintf (stderr, "%s: otp_db_open failed\n", prog); errx ("otp_db_open failed");
return 1;
}
if (user) if (user)
print_otp_entry_for_name(db, user); print_otp_entry_for_name(db, user);
@@ -292,7 +284,7 @@ main (int argc, char **argv)
OtpAlgorithm *alg = otp_find_alg (OTP_ALG_DEFAULT); OtpAlgorithm *alg = otp_find_alg (OTP_ALG_DEFAULT);
char *user = NULL; char *user = NULL;
prog = argv[0]; set_progname (argv[0]);
while ((c = getopt (argc, argv, "hrf:u:ld")) != EOF) while ((c = getopt (argc, argv, "hrf:u:ld")) != EOF)
switch (c) { switch (c) {
@@ -303,11 +295,8 @@ main (int argc, char **argv)
listp = 1; listp = 1;
break; break;
case 'd' : case 'd' :
if (uid != 0) { if (uid != 0)
fprintf (stderr, "%s: Only root can delete OTPs\n", errx (1, "Only root can delete OTPs");
prog);
return 1;
}
deletep = 1; deletep = 1;
break; break;
case 'r' : case 'r' :
@@ -315,16 +304,12 @@ main (int argc, char **argv)
break; break;
case 'f' : case 'f' :
alg = otp_find_alg (optarg); alg = otp_find_alg (optarg);
if (alg == NULL) { if (alg == NULL)
fprintf (stderr, "%s: Unknown algorithm: %s\n", prog, optarg); errx (1, "Unknown algorithm: %s", optarg);
return 1;
}
break; break;
case 'u' : case 'u' :
if (uid != 0) { if (uid != 0)
fprintf (stderr, "%s: Only root can use `-u'\n", prog); errx (1, "Only root can use `-u'");
return 1;
}
user = optarg; user = optarg;
break; break;
default : default :
@@ -347,10 +332,8 @@ main (int argc, char **argv)
struct passwd *pwd; struct passwd *pwd;
pwd = k_getpwuid(uid); pwd = k_getpwuid(uid);
if (pwd == NULL) { if (pwd == NULL)
fprintf (stderr, "%s: You don't exist\n", prog); err (1, "You don't exist");
return 1;
}
user = pwd->pw_name; user = pwd->pw_name;
} }
@@ -361,12 +344,10 @@ main (int argc, char **argv)
*/ */
if (uid != 0 && (defaultp || renewp)) { if (uid != 0 && (defaultp || renewp)) {
if (!has_an_otp(user)) { if (!has_an_otp(user)) {
fprintf(stderr, "%s: Only root can set an initial OTP\n", prog); errx (1, "Only root can set an initial OTP");
return 1;
} else { /* Check the next OTP (RFC 1938/8.0: SHOULD) */ } else { /* Check the next OTP (RFC 1938/8.0: SHOULD) */
if (verify_user_otp(user) != 0) { if (verify_user_otp(user) != 0) {
fprintf(stderr, "%s: User authentification failed\n", prog); errx (1, "User authentification failed");
return 1;
} }
} }
} }