BSD 4 release
[unix-history] / usr / src / cmd / prmail.c
CommitLineData
31cef89c 1static char *sccsid = "@(#)prmail.c 4.1 (Berkeley) 10/9/80";
750a6622
BJ
2
3#include <pwd.h>
4/*
5 * prmail
6 */
7struct passwd *getpwuid();
8char *getenv();
9
10main(argc, argv)
11 int argc;
12 char **argv;
13{
14 register struct passwd *pp;
15
16 --argc, ++argv;
17 if (chdir("/usr/spool/mail") < 0) {
18 perror("/usr/spool/mail");
19 exit(1);
20 }
21 if (argc == 0) {
22 char *user = getenv("USER");
23 if (user == 0) {
24 pp = getpwuid(getuid());
25 if (pp == 0) {
26 printf("Who are you?\n");
27 exit(1);
28 }
29 user = pp->pw_name;
30 }
31 prmail(user, 0);
32 } else
33 while (--argc >= 0)
34 prmail(*argv++, 1);
35 exit(0);
36}
37
38#include <sys/types.h>
39#include <sys/stat.h>
40
41prmail(user, other)
42 char *user;
43{
44 struct stat stb;
45 char cmdbuf[256];
46
47 if (stat(user, &stb) < 0) {
48 printf("No mail for %s.\n", user);
49 return;
50 }
51 if (access(user, "4") < 0) {
52 printf("Mailbox for %s unreadable\n", user);
53 return;
54 }
55 if (other)
56 printf(">>> %s <<<\n", user);
57 sprintf(cmdbuf, "more %s", user);
58 system(cmdbuf);
59 if (other)
60 printf("-----\n\n");
61}