date and time created 87/04/06 14:41:49 by bostic
[unix-history] / usr / src / usr.sbin / sendmail / praliases / praliases.c
CommitLineData
43937410
KB
1# include "sendmail.h"
2
3static char sccsid[] = "@(#)praliases.c 5.1 %G%";
4
5typedef struct { char *dptr; int dsize; } datum;
6datum firstkey(), nextkey(), fetch();
7char *filename = ALIASFILE;
8
9main(argc, argv)
10 char **argv;
11{
12 datum content, key;
13
14 if (argc > 2 && strcmp(argv[1], "-f") == 0)
15 {
16 argv++;
17 filename = *++argv;
18 argc -= 2;
19 }
20
21 if (dbminit(filename) < 0)
22 exit(EX_OSFILE);
23 argc--, argv++;
24 if (argc == 0) {
25 for (key = firstkey(); key.dptr; key = nextkey(key)) {
26 content = fetch(key);
27 printf("\n%s:%s\n", key.dptr, content.dptr);
28 }
29 exit(EX_OK);
30 }
31 while (argc) {
32 key.dptr = *argv;
33 key.dsize = strlen(*argv)+1;
34 content = fetch(key);
35 if (content.dptr == 0)
36 printf("%s: No such key\n");
37 else
38 printf("\n%s:%s\n", key.dptr, content.dptr);
39 argc--, argv++;
40 }
41 exit(EX_OK);
42}