]> diplodocus.org Git - nmh/blob - docs/historical/mh-6.8.5/h/aliasbr.h
sbr/mts.c: Delete mmdlm2; use same-valued mmdlm1 instead.
[nmh] / docs / historical / mh-6.8.5 / h / aliasbr.h
1 /* aliasbr.h - definitions for the aliasing system */
2 /* $Id: aliasbr.h,v 1.2 1992/05/12 22:03:31 jromine Exp $ */
3
4
5 extern char *AliasFile; /* mh-alias(5) */
6
7 #define PASSWD "/etc/passwd" /* passwd(5) */
8
9 #define GROUP "/etc/group" /* group(5) */
10
11 #define EVERYONE 200 /* lowest uid for everyone */
12
13 struct aka {
14 char *ak_name; /* name to match against */
15 struct adr *ak_addr; /* list of addresses that it maps to */
16 struct aka *ak_next; /* next aka in list */
17 char ak_visible; /* should be visible in headers */
18 };
19
20 struct adr {
21 char *ad_text; /* text of this address in list */
22 struct adr *ad_next; /* next adr in list */
23 char ad_local; /* text is local (check for expansion) */
24 };
25
26 struct home { /* incore version of /etc/passwd */
27 char *h_name; /* user name */
28 int h_uid; /* user id */
29 int h_gid; /* user's group */
30 char *h_home; /* user's home directory */
31 char *h_shell; /* user's shell */
32 #ifdef BSD42
33 int h_ngrps; /* number of groups this user belongs to */
34 #endif /* BSD42 */
35 struct home *h_next; /* next home in list */
36 };
37
38 #ifndef MMDFMTS
39 struct home *seek_home ();
40 #endif /* MMDFMTS */
41
42 int alias (), akvisible (), init_pw ();
43 char *akresult (), *akvalue (), *akerror ();
44
45 /* codes returned by alias() */
46
47 #define AK_OK 0 /* file parsed ok */
48 #define AK_NOFILE 1 /* couldn't read file */
49 #define AK_ERROR 2 /* error parsing file */
50 #define AK_LIMIT 3 /* memory limit exceeded */
51 #define AK_NOGROUP 4 /* no such group */
52
53
54 /* should live here, not in mts.c */
55
56 extern int Everyone;
57 extern char *NoShell;