xref: /csrg-svn/usr.sbin/sendmail/src/conf.h (revision 57642)
1 /*
2  * Copyright (c) 1983 Eric P. Allman
3  * Copyright (c) 1988 Regents of the University of California.
4  * All rights reserved.
5  *
6  * %sccs.include.redist.c%
7  *
8  *	@(#)conf.h	6.4 (Berkeley) 01/21/93
9  */
10 
11 /*
12 **  CONF.H -- All user-configurable parameters for sendmail
13 */
14 
15 # include <sys/param.h>
16 
17 /*
18 **  Table sizes, etc....
19 **	There shouldn't be much need to change these....
20 */
21 
22 # define MAXLINE	1024		/* max line length */
23 # define MAXNAME	256		/* max length of a name */
24 # define MAXPV		40		/* max # of parms to mailers */
25 # define MAXATOM	100		/* max atoms per address */
26 # define MAXMAILERS	25		/* maximum mailers known to system */
27 # define MAXRWSETS	100		/* max # of sets of rewriting rules */
28 # define MAXPRIORITIES	25		/* max values for Precedence: field */
29 # define MAXTRUST	30		/* maximum number of trusted users */
30 # define MAXMXHOSTS	20		/* max # of MX records */
31 # define SMTPLINELIM	990		/* maximum SMTP line length */
32 # define MAXKEY		128		/* maximum size of a database key */
33 # define MEMCHUNKSIZE	1024		/* chunk size for memory allocation */
34 # define MAXUSERENVIRON	100		/* max envariables saved */
35 
36 # ifndef QUEUESIZE
37 # define QUEUESIZE	1000		/* max # of jobs per queue run */
38 # endif
39 
40 # ifndef FORK
41 # define FORK		vfork		/* function to call to fork mailer */
42 # endif
43 
44 /*
45 **  Compilation options.
46 **
47 **	#define these if they are available; comment them out otherwise.
48 */
49 
50 # define LOG		1	/* enable logging */
51 # define SMTP		1	/* enable user and server SMTP */
52 # define QUEUE		1	/* enable queueing */
53 # define UGLYUUCP	1	/* output ugly UUCP From lines */
54 # define DAEMON		1	/* include the daemon (requires IPC & SMTP) */
55 # define SETPROCTITLE	1	/* munge argv to display current status */
56 # define NAMED_BIND	1	/* use Berkeley Internet Domain Server */
57 # define MATCHGECOS	1	/* match user names from gecos field */
58 
59 # ifdef NEWDB
60 # define USERDB		1	/* look in user database (requires NEWDB) */
61 # define BTREE_MAP	1	/* enable BTREE mapping type (requires NEWDB) */
62 # define HASH_MAP	1	/* enable HASH mapping type (requires NEWDB) */
63 # endif
64 
65 # ifdef NDBM
66 # define DBM_MAP	1	/* enable DBM mapping type (requires NDBM) */
67 # endif
68 
69 /*
70 **  Some general configuration -- you shouldn't have to touch these
71 */
72 
73 # ifdef hpux
74 # define SYSTEM5	1
75 # endif
76 
77 # ifdef SYSTEM5
78 
79 # define LOCKF		1	/* use System V lockf instead of flock */
80 # define SYS5TZ		1	/* use System V style timezones */
81 # define UNAME		1	/* use System V uname system call */
82 
83 # endif
84 
85 /*
86 **  Older systems don't have this error code -- it should be in
87 **  /usr/include/sysexits.h.
88 */
89 
90 # ifndef EX_CONFIG
91 # define EX_CONFIG	78	/* configuration error */
92 # endif
93 
94 /*
95 **  Arrange to use either varargs or stdargs
96 */
97 
98 # ifdef __STDC__
99 
100 # include <stdarg.h>
101 
102 # define VA_LOCAL_DECL	va_list ap;
103 # define VA_START(f)	va_start(ap, f)
104 # define VA_END		va_end(ap)
105 
106 # else
107 
108 # include <varargs.h>
109 
110 # define VA_LOCAL_DECL	va_list ap;
111 # define VA_START(f)	va_start(ap)
112 # define VA_END		va_end(ap)
113 
114 # endif
115 
116 #ifdef UNAME
117 # include <sys/utsname.h>
118 # ifdef newstr
119 #  undef newstr
120 # endif
121 #else /* ! UNAME */
122 # define NODE_LENGTH 32
123 struct utsname
124 {
125 	char nodename[NODE_LENGTH+1];
126 };
127 #endif /* UNAME */
128 
129 #ifdef sun
130 # include <vfork.h>
131 #endif
132