Commit | Line | Data |
---|---|---|
5a739feb | 1 | /* |
dc45ba8c | 2 | * Copyright (c) 1983 Eric P. Allman |
bee79b64 KB |
3 | * Copyright (c) 1988 Regents of the University of California. |
4 | * All rights reserved. | |
5 | * | |
417f7a11 | 6 | * %sccs.include.redist.c% |
bee79b64 | 7 | * |
a3685d83 | 8 | * @(#)conf.h 6.13 (Berkeley) %G% |
bee79b64 | 9 | */ |
aeb2545d DF |
10 | |
11 | /* | |
12 | ** CONF.H -- All user-configurable parameters for sendmail | |
5a739feb EA |
13 | */ |
14 | ||
f43b04ce | 15 | # include <sys/param.h> |
f8a31c8e | 16 | # include <fcntl.h> |
f43b04ce | 17 | |
5a739feb EA |
18 | /* |
19 | ** Table sizes, etc.... | |
20 | ** There shouldn't be much need to change these.... | |
21 | */ | |
22 | ||
f0a960f1 EA |
23 | # define MAXLINE 1024 /* max line length */ |
24 | # define MAXNAME 256 /* max length of a name */ | |
5a739feb | 25 | # define MAXPV 40 /* max # of parms to mailers */ |
5a739feb EA |
26 | # define MAXATOM 100 /* max atoms per address */ |
27 | # define MAXMAILERS 25 /* maximum mailers known to system */ | |
8583ab39 | 28 | # define MAXRWSETS 100 /* max # of sets of rewriting rules */ |
5a739feb | 29 | # define MAXPRIORITIES 25 /* max values for Precedence: field */ |
8583ab39 | 30 | # define MAXMXHOSTS 20 /* max # of MX records */ |
8657d05f | 31 | # define SMTPLINELIM 990 /* maximum SMTP line length */ |
f43b04ce EA |
32 | # define MAXKEY 128 /* maximum size of a database key */ |
33 | # define MEMCHUNKSIZE 1024 /* chunk size for memory allocation */ | |
6e99f903 | 34 | # define MAXUSERENVIRON 100 /* max envariables saved */ |
8e571338 | 35 | # define MAXIPADDR 16 /* max # of IP addrs for this host */ |
68ffe387 | 36 | # define PSBUFSIZE (MAXNAME * 4) /* size of prescan buffer */ |
8583ab39 EA |
37 | |
38 | # ifndef QUEUESIZE | |
39 | # define QUEUESIZE 1000 /* max # of jobs per queue run */ | |
40 | # endif | |
41 | ||
140717b5 EA |
42 | # ifndef FORK |
43 | # define FORK vfork /* function to call to fork mailer */ | |
44 | # endif | |
5a739feb EA |
45 | |
46 | /* | |
47 | ** Compilation options. | |
9bcdff70 EA |
48 | ** |
49 | ** #define these if they are available; comment them out otherwise. | |
5a739feb EA |
50 | */ |
51 | ||
9bcdff70 EA |
52 | # define LOG 1 /* enable logging */ |
53 | # define SMTP 1 /* enable user and server SMTP */ | |
54 | # define QUEUE 1 /* enable queueing */ | |
55 | # define UGLYUUCP 1 /* output ugly UUCP From lines */ | |
56 | # define DAEMON 1 /* include the daemon (requires IPC & SMTP) */ | |
9bcdff70 | 57 | # define SETPROCTITLE 1 /* munge argv to display current status */ |
35af2f06 | 58 | # define NAMED_BIND 1 /* use Berkeley Internet Domain Server */ |
7f0fd60b | 59 | # define MATCHGECOS 1 /* match user names from gecos field */ |
d25bb424 | 60 | |
273562d8 EA |
61 | # ifdef NEWDB |
62 | # define USERDB 1 /* look in user database (requires NEWDB) */ | |
5a4c03c6 | 63 | # define BTREE_MAP 1 /* enable BTREE mapping type (requires NEWDB) */ |
8583ab39 | 64 | # define HASH_MAP 1 /* enable HASH mapping type (requires NEWDB) */ |
5a4c03c6 EA |
65 | # endif |
66 | ||
67 | # ifdef NDBM | |
68 | # define DBM_MAP 1 /* enable DBM mapping type (requires NDBM) */ | |
69 | # endif | |
70 | ||
71 | /* | |
72 | ** Some general configuration -- you shouldn't have to touch these | |
73 | */ | |
74 | ||
75 | # ifdef hpux | |
76 | # define SYSTEM5 1 | |
273562d8 EA |
77 | # endif |
78 | ||
d25bb424 | 79 | # ifdef SYSTEM5 |
07c63e56 | 80 | |
d25bb424 | 81 | # define LOCKF 1 /* use System V lockf instead of flock */ |
07c63e56 | 82 | # define SYS5TZ 1 /* use System V style timezones */ |
322eceee | 83 | # define HASUNAME 1 /* use System V uname system call */ |
07c63e56 | 84 | |
d25bb424 | 85 | # endif |
19c9e482 | 86 | |
030ae776 EA |
87 | /* |
88 | ** Older systems don't have this error code -- it should be in | |
89 | ** /usr/include/sysexits.h. | |
90 | */ | |
91 | ||
92 | # ifndef EX_CONFIG | |
93 | # define EX_CONFIG 78 /* configuration error */ | |
94 | # endif | |
5229f34d EA |
95 | |
96 | /* | |
97 | ** Arrange to use either varargs or stdargs | |
98 | */ | |
99 | ||
100 | # ifdef __STDC__ | |
101 | ||
102 | # include <stdarg.h> | |
103 | ||
5229f34d EA |
104 | # define VA_LOCAL_DECL va_list ap; |
105 | # define VA_START(f) va_start(ap, f) | |
106 | # define VA_END va_end(ap) | |
107 | ||
108 | # else | |
109 | ||
110 | # include <varargs.h> | |
111 | ||
5229f34d EA |
112 | # define VA_LOCAL_DECL va_list ap; |
113 | # define VA_START(f) va_start(ap) | |
114 | # define VA_END va_end(ap) | |
115 | ||
116 | # endif | |
422bed79 | 117 | |
322eceee | 118 | #ifdef HASUNAME |
422bed79 EA |
119 | # include <sys/utsname.h> |
120 | # ifdef newstr | |
121 | # undef newstr | |
122 | # endif | |
322eceee | 123 | #else /* ! HASUNAME */ |
422bed79 EA |
124 | # define NODE_LENGTH 32 |
125 | struct utsname | |
126 | { | |
127 | char nodename[NODE_LENGTH+1]; | |
128 | }; | |
322eceee | 129 | #endif /* HASUNAME */ |
6e99f903 EA |
130 | |
131 | #ifdef sun | |
132 | # include <vfork.h> | |
133 | #endif | |
8d3fd325 EA |
134 | |
135 | #ifndef MAXHOSTNAMELEN | |
136 | #define MAXHOSTNAMELEN 256 | |
137 | #endif | |
49c069a9 EA |
138 | |
139 | #if !defined(SIGCHLD) && defined(SIGCLD) | |
140 | # define SIGCHLD SIGCLD | |
141 | #endif | |
142 | ||
143 | #ifndef STDIN_FILENO | |
144 | #define STDIN_FILENO 0 | |
145 | #endif | |
146 | ||
147 | #ifndef STDOUT_FILENO | |
148 | #define STDOUT_FILENO 1 | |
149 | #endif | |
150 | ||
151 | #ifndef STDERR_FILENO | |
152 | #define STDERR_FILENO 2 | |
153 | #endif | |
f8a31c8e EA |
154 | |
155 | #ifdef LOCKF | |
156 | #define LOCK_SH 0x01 /* shared lock */ | |
157 | #define LOCK_EX 0x02 /* exclusive lock */ | |
158 | #define LOCK_NB 0x04 /* non-blocking lock */ | |
64247676 EA |
159 | |
160 | #else | |
161 | ||
162 | # include <sys/file.h> | |
163 | ||
f8a31c8e | 164 | #endif |
a3685d83 EA |
165 | |
166 | /* | |
167 | ** Size of tobuf (deliver.c) | |
168 | ** Tweak this to match your syslog implementation. It will have to | |
169 | ** allow for the extra information printed. | |
170 | */ | |
171 | ||
172 | #ifndef TOBUFSIZE | |
173 | # define TOBUFSIZE (1024 - 256) | |
174 | #endif |