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.10 (Berkeley) 02/23/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 MAXMXHOSTS 20 /* max # of MX records */ 30 # define SMTPLINELIM 990 /* maximum SMTP line length */ 31 # define MAXKEY 128 /* maximum size of a database key */ 32 # define MEMCHUNKSIZE 1024 /* chunk size for memory allocation */ 33 # define MAXUSERENVIRON 100 /* max envariables saved */ 34 # define MAXIPADDR 16 /* max # of IP addrs for this host */ 35 # define PSBUFSIZE (MAXNAME * 4) /* size of prescan buffer */ 36 37 # ifndef QUEUESIZE 38 # define QUEUESIZE 1000 /* max # of jobs per queue run */ 39 # endif 40 41 # ifndef FORK 42 # define FORK vfork /* function to call to fork mailer */ 43 # endif 44 45 /* 46 ** Compilation options. 47 ** 48 ** #define these if they are available; comment them out otherwise. 49 */ 50 51 # define LOG 1 /* enable logging */ 52 # define SMTP 1 /* enable user and server SMTP */ 53 # define QUEUE 1 /* enable queueing */ 54 # define UGLYUUCP 1 /* output ugly UUCP From lines */ 55 # define DAEMON 1 /* include the daemon (requires IPC & SMTP) */ 56 # define SETPROCTITLE 1 /* munge argv to display current status */ 57 # define NAMED_BIND 1 /* use Berkeley Internet Domain Server */ 58 # define MATCHGECOS 1 /* match user names from gecos field */ 59 60 # ifdef NEWDB 61 # define USERDB 1 /* look in user database (requires NEWDB) */ 62 # define BTREE_MAP 1 /* enable BTREE mapping type (requires NEWDB) */ 63 # define HASH_MAP 1 /* enable HASH mapping type (requires NEWDB) */ 64 # endif 65 66 # ifdef NDBM 67 # define DBM_MAP 1 /* enable DBM mapping type (requires NDBM) */ 68 # endif 69 70 /* 71 ** Some general configuration -- you shouldn't have to touch these 72 */ 73 74 # ifdef hpux 75 # define SYSTEM5 1 76 # endif 77 78 # ifdef SYSTEM5 79 80 # define LOCKF 1 /* use System V lockf instead of flock */ 81 # define SYS5TZ 1 /* use System V style timezones */ 82 # define HASUNAME 1 /* use System V uname system call */ 83 84 # endif 85 86 /* 87 ** Older systems don't have this error code -- it should be in 88 ** /usr/include/sysexits.h. 89 */ 90 91 # ifndef EX_CONFIG 92 # define EX_CONFIG 78 /* configuration error */ 93 # endif 94 95 /* 96 ** Arrange to use either varargs or stdargs 97 */ 98 99 # ifdef __STDC__ 100 101 # include <stdarg.h> 102 103 # define VA_LOCAL_DECL va_list ap; 104 # define VA_START(f) va_start(ap, f) 105 # define VA_END va_end(ap) 106 107 # else 108 109 # include <varargs.h> 110 111 # define VA_LOCAL_DECL va_list ap; 112 # define VA_START(f) va_start(ap) 113 # define VA_END va_end(ap) 114 115 # endif 116 117 #ifdef HASUNAME 118 # include <sys/utsname.h> 119 # ifdef newstr 120 # undef newstr 121 # endif 122 #else /* ! HASUNAME */ 123 # define NODE_LENGTH 32 124 struct utsname 125 { 126 char nodename[NODE_LENGTH+1]; 127 }; 128 #endif /* HASUNAME */ 129 130 #ifdef sun 131 # include <vfork.h> 132 #endif 133 134 #ifndef MAXHOSTNAMELEN 135 #define MAXHOSTNAMELEN 256 136 #endif 137 138 #if !defined(SIGCHLD) && defined(SIGCLD) 139 # define SIGCHLD SIGCLD 140 #endif 141 142 #ifndef STDIN_FILENO 143 #define STDIN_FILENO 0 144 #endif 145 146 #ifndef STDOUT_FILENO 147 #define STDOUT_FILENO 1 148 #endif 149 150 #ifndef STDERR_FILENO 151 #define STDERR_FILENO 2 152 #endif 153