diff options
author | charnier <charnier@FreeBSD.org> | 1997-07-08 10:59:50 +0000 |
---|---|---|
committer | charnier <charnier@FreeBSD.org> | 1997-07-08 10:59:50 +0000 |
commit | 3354e4d90e9f2fc076db032d9235ae8e58152186 (patch) | |
tree | d35323fd307105259865a1ebc133b3629775062d /usr.bin/from | |
parent | f87a50fadfb943a8268d63369cc7e34a88b81ba6 (diff) | |
download | FreeBSD-src-3354e4d90e9f2fc076db032d9235ae8e58152186.zip FreeBSD-src-3354e4d90e9f2fc076db032d9235ae8e58152186.tar.gz |
Add usage(), use err(3).
Diffstat (limited to 'usr.bin/from')
-rw-r--r-- | usr.bin/from/from.c | 38 |
1 files changed, 25 insertions, 13 deletions
diff --git a/usr.bin/from/from.c b/usr.bin/from/from.c index 8d20ad5..c246ad4 100644 --- a/usr.bin/from/from.c +++ b/usr.bin/from/from.c @@ -32,24 +32,33 @@ */ #ifndef lint -static char copyright[] = +static const char copyright[] = "@(#) Copyright (c) 1980, 1988, 1993\n\ The Regents of the University of California. All rights reserved.\n"; #endif /* not lint */ #ifndef lint +#if 0 static char sccsid[] = "@(#)from.c 8.1 (Berkeley) 6/6/93"; +#endif +static const char rcsid[] = + "$Id$"; #endif /* not lint */ #include <sys/types.h> - #include <ctype.h> +#include <err.h> #include <pwd.h> #include <stdio.h> #include <stdlib.h> -#include <string.h> #include <paths.h> +#include <string.h> +#include <unistd.h> +int match __P((char *, char *)); +static void usage __P((void)); + +int main(argc, argv) int argc; char **argv; @@ -66,7 +75,7 @@ main(argc, argv) #endif file = sender = NULL; - while ((ch = getopt(argc, argv, "f:s:?")) != -1) + while ((ch = getopt(argc, argv, "f:s:")) != -1) switch((char)ch) { case 'f': file = optarg; @@ -79,8 +88,7 @@ main(argc, argv) break; case '?': default: - fprintf(stderr, "usage: from [-f file] [-s sender] [user]\n"); - exit(1); + usage(); } argv += optind; @@ -90,11 +98,8 @@ main(argc, argv) file = buf; } else { if (!(file = getenv("MAIL"))) { - if (!(pwd = getpwuid(getuid()))) { - (void)fprintf(stderr, - "from: no password file entry for you.\n"); - exit(1); - } + if (!(pwd = getpwuid(getuid()))) + errx(1, "no password file entry for you"); file = pwd->pw_name; (void)sprintf(buf, "%s/%s", _PATH_MAILDIR, file); @@ -107,8 +112,7 @@ main(argc, argv) if (strcmp(file, "-") == 0) { } else if (!freopen(file, "r", stdin)) { - fprintf(stderr, "from: can't read %s.\n", file); - exit(1); + errx(1, "can't read %s", file); } for (newline = 1; fgets(buf, sizeof(buf), stdin);) { if (*buf == '\n') { @@ -123,6 +127,14 @@ main(argc, argv) exit(0); } +static void +usage() +{ + fprintf(stderr, "usage: from [-f file] [-s sender] [user]\n"); + exit(1); +} + +int match(line, sender) register char *line, *sender; { |