From 07a53e34fd817d2a9a420ef532a319f8454f7618 Mon Sep 17 00:00:00 2001 From: sobrado Date: Tue, 29 Jul 2008 18:25:28 +0000 Subject: [PATCH] an enum specifier is more elegant than a set of #defines; storing the program mode variable (pmode) as a global let us have a more consistent prototype for usage(). changes suggested by pyr@. ok millert@, pyr@ --- usr.bin/uudecode/uudecode.c | 40 ++++++++++++++++++------------------- usr.bin/uuencode/uuencode.c | 32 ++++++++++++++--------------- 2 files changed, 35 insertions(+), 37 deletions(-) diff --git a/usr.bin/uudecode/uudecode.c b/usr.bin/uudecode/uudecode.c index cbe70add09c..afb717769d9 100644 --- a/usr.bin/uudecode/uudecode.c +++ b/usr.bin/uudecode/uudecode.c @@ -1,4 +1,4 @@ -/* $OpenBSD: uudecode.c,v 1.15 2008/07/05 20:59:42 sobrado Exp $ */ +/* $OpenBSD: uudecode.c,v 1.16 2008/07/29 18:25:28 sobrado Exp $ */ /* $FreeBSD: uudecode.c,v 1.49 2003/05/03 19:44:46 obrien Exp $ */ /*- @@ -40,7 +40,7 @@ static const char copyright[] = #if 0 static const char sccsid[] = "@(#)uudecode.c 8.2 (Berkeley) 4/2/94"; #endif -static const char rcsid[] = "$OpenBSD: uudecode.c,v 1.15 2008/07/05 20:59:42 sobrado Exp $"; +static const char rcsid[] = "$OpenBSD: uudecode.c,v 1.16 2008/07/29 18:25:28 sobrado Exp $"; #endif /* not lint */ /* @@ -69,41 +69,39 @@ static const char *infile, *outfile; static FILE *infp, *outfp; static int base64, cflag, iflag, oflag, pflag, rflag, sflag; -static void usage(int); +static void usage(void); static int decode(void); static int decode2(void); static int uu_decode(void); static int base64_decode(void); -/* - * program modes - */ -#define MODE_DECODE 0 -#define MODE_B64DECODE 1 +enum program_mode { + MODE_DECODE, + MODE_B64DECODE +} pmode; int main(int argc, char *argv[]) { - int rval, ch, mode; + int rval, ch; extern char *__progname; static const char *optstr[2] = { "cimo:prs", "cio:prs" }; - mode = 0; - + pmode = MODE_DECODE; if (strcmp(__progname, "b64decode") == 0) { base64 = 1; - mode = MODE_B64DECODE; + pmode = MODE_B64DECODE; } setlocale(LC_ALL, ""); - while ((ch = getopt(argc, argv, optstr[mode])) != -1) { + while ((ch = getopt(argc, argv, optstr[pmode])) != -1) { switch(ch) { case 'c': if (oflag || rflag) - usage(mode); + usage(); cflag = 1; /* multiple uudecode'd files */ break; case 'i': @@ -114,28 +112,28 @@ main(int argc, char *argv[]) break; case 'o': if (cflag || pflag || rflag || sflag) - usage(mode); + usage(); oflag = 1; /* output to the specified file */ sflag = 1; /* do not strip pathnames for output */ outfile = optarg; /* set the output filename */ break; case 'p': if (oflag) - usage(mode); + usage(); pflag = 1; /* print output to stdout */ break; case 'r': if (cflag || oflag) - usage(mode); + usage(); rflag = 1; /* decode raw data */ break; case 's': if (oflag) - usage(mode); + usage(); sflag = 1; /* do not strip pathnames for output */ break; default: - usage(mode); + usage(); } } argc -= optind; @@ -450,9 +448,9 @@ base64_decode(void) } static void -usage(int mode) +usage(void) { - switch (mode) { + switch (pmode) { case MODE_DECODE: (void)fprintf(stderr, "usage: uudecode [-cimprs] [file ...]\n" diff --git a/usr.bin/uuencode/uuencode.c b/usr.bin/uuencode/uuencode.c index 414c9dbf43d..2898558e6d9 100644 --- a/usr.bin/uuencode/uuencode.c +++ b/usr.bin/uuencode/uuencode.c @@ -1,4 +1,4 @@ -/* $OpenBSD: uuencode.c,v 1.8 2008/07/05 20:59:42 sobrado Exp $ */ +/* $OpenBSD: uuencode.c,v 1.9 2008/07/29 18:25:28 sobrado Exp $ */ /* $FreeBSD: uuencode.c,v 1.18 2004/01/22 07:23:35 grehan Exp $ */ /*- @@ -40,7 +40,7 @@ static const char copyright[] = #if 0 static const char sccsid[] = "@(#)uuencode.c 8.2 (Berkeley) 4/2/94"; #endif -static const char rcsid[] = "$OpenBSD: uuencode.c,v 1.8 2008/07/05 20:59:42 sobrado Exp $"; +static const char rcsid[] = "$OpenBSD: uuencode.c,v 1.9 2008/07/29 18:25:28 sobrado Exp $"; #endif /* not lint */ /* @@ -63,23 +63,22 @@ static const char rcsid[] = "$OpenBSD: uuencode.c,v 1.8 2008/07/05 20:59:42 sobr void encode(void); void base64_encode(void); -static void usage(int); +static void usage(void); FILE *output; int mode; char **av; -/* - * program modes - */ -#define MODE_ENCODE 0 -#define MODE_B64ENCODE 1 +enum program_mode { + MODE_ENCODE, + MODE_B64ENCODE +} pmode; int main(int argc, char *argv[]) { struct stat sb; - int base64, ch, mode; + int base64, ch; char *outfile; extern char *__progname; static const char *optstr[2] = { @@ -87,16 +86,17 @@ main(int argc, char *argv[]) "o:" }; - base64 = mode = 0; + base64 = 0; outfile = NULL; + pmode = MODE_ENCODE; if (strcmp(__progname, "b64encode") == 0) { base64 = 1; - mode = MODE_B64ENCODE; + pmode = MODE_B64ENCODE; } setlocale(LC_ALL, ""); - while ((ch = getopt(argc, argv, optstr[mode])) != -1) { + while ((ch = getopt(argc, argv, optstr[pmode])) != -1) { switch (ch) { case 'm': base64 = 1; @@ -106,7 +106,7 @@ main(int argc, char *argv[]) break; case '?': default: - usage(mode); + usage(); } } argv += optind; @@ -126,7 +126,7 @@ main(int argc, char *argv[]) break; case 0: default: - usage(mode); + usage(); } av = argv; @@ -227,9 +227,9 @@ encode(void) } static void -usage(int mode) +usage(void) { - switch (mode) { + switch (pmode) { case MODE_ENCODE: (void)fprintf(stderr, "usage: uuencode [-m] [-o output_file] [file] name\n"); -- 2.20.1