📄 conf.h
字号:
#ifdef __bsdi__# define HASUNSETENV 1 /* has the unsetenv(3) call */# define HASSETSID 1 /* has the setsid(2) POSIX syscall */# include <sys/cdefs.h># define ERRLIST_PREDEFINED /* don't declare sys_errlist */# define SFS_TYPE SFS_MOUNT /* use <sys/mount.h> statfs() impl */# ifndef LA_TYPE# define LA_TYPE LA_SUBR# endif# if defined(_BSDI_VERSION) && _BSDI_VERSION >= 199312 /* version 1.1 or later */# define HASSETPROCTITLE 1 /* setproctitle is in libc */# undef SETPROCTITLE /* so don't redefine it in conf.c */# else /* version 1.0 or earlier */# ifndef OLD_NEWDB# define OLD_NEWDB 1 /* old version of newdb library */# endif# endif#endif/*** 386BSD / FreeBSD 1.0E / NetBSD (all architectures, all versions)**** 4.3BSD clone, closer to 4.4BSD**** See also BSD defines.*/#if defined(__386BSD__) || defined(__FreeBSD__) || defined(__NetBSD__)# define HASUNSETENV 1 /* has unsetenv(3) call */# define HASSETSID 1 /* has the setsid(2) POSIX syscall */# ifdef __NetBSD__# define HASUNAME 1 /* has uname(2) syscall */# endif# include <sys/cdefs.h># define ERRLIST_PREDEFINED /* don't declare sys_errlist */# ifndef LA_TYPE# define LA_TYPE LA_SUBR# endif# define SFS_TYPE SFS_MOUNT /* use <sys/mount.h> statfs() impl */#endif/*** Mach386**** For mt Xinu's Mach386 system.*/#if defined(MACH) && defined(i386)# define MACH386 1# define HASUNSETENV 1 /* has unsetenv(3) call */# define HASINITGROUPS 1 /* has initgroups(3) call */# ifndef HASFLOCK# define HASFLOCK 1 /* has flock(2) call */# endif# define NEEDGETOPT 1 /* need a replacement for getopt(3) */# define NEEDSTRTOL 1 /* need the strtol() function */# define setpgid setpgrp# ifndef LA_TYPE# define LA_TYPE LA_FLOAT# endif# define SFS_TYPE SFS_VFS /* use <sys/vfs.h> statfs() implementation */# undef HASSETVBUF /* don't actually have setvbuf(3) */# undef WEXITSTATUS# undef WIFEXITED# ifndef _PATH_SENDMAILCF# define _PATH_SENDMAILCF "/usr/lib/sendmail.cf"# endif# ifndef _PATH_SENDMAILPID# define _PATH_SENDMAILPID "/etc/sendmail.pid"# endif#endif/*** 4.3 BSD -- this is for very old systems**** Should work for mt Xinu MORE/BSD and Mips UMIPS-BSD 2.1.**** You'll also have to install a new resolver library.** I don't guarantee that support for this environment is complete.*/#if defined(oldBSD43) || defined(MORE_BSD) || defined(umipsbsd)# define NEEDVPRINTF 1 /* need a replacement for vprintf(3) */# define NEEDGETOPT 1 /* need a replacement for getopt(3) */# define ARBPTR_T char *# define setpgid setpgrp# ifndef LA_TYPE# define LA_TYPE LA_FLOAT# endif# ifndef _PATH_SENDMAILCF# define _PATH_SENDMAILCF "/usr/lib/sendmail.cf"# endif# ifndef IDENTPROTO# define IDENTPROTO 0 /* TCP/IP implementation is broken */# endif# undef WEXITSTATUS# undef WIFEXITEDtypedef short pid_t;extern int errno;#endif/*** SCO Unix**** This includes two parts -- the first is for SCO Open Server 3.2v4** (contributed by Philippe Brand <phb@colombo.telesys-innov.fr>).** The second is, I believe, for an older version.*/#ifdef _SCO_unix_4_2# define _SCO_unix_# define HASSETREUID 1 /* has setreuid(2) call */# define NEEDFSYNC 1 /* needs the fsync(2) call stub */# define _PATH_UNIX "/unix"# ifndef _PATH_SENDMAILCF# define _PATH_SENDMAILCF "/usr/lib/sendmail.cf"# endif# ifndef _PATH_SENDMAILPID# define _PATH_SENDMAILPID "/etc/sendmail.pid"# endif#endif#ifdef _SCO_unix_# define SYSTEM5 1 /* include all the System V defines */# define SYS5SIGNALS 1 /* SysV signal semantics -- reset on each sig */# define HASGETUSERSHELL 0 /* does not have getusershell(3) call */# define FORK fork# define MAXPATHLEN PATHSIZE# define LA_TYPE LA_SHORT# define SFS_TYPE SFS_STATFS /* use <sys/statfs.h> statfs() impl */# undef NETUNIX /* no unix domain socket support */#endif/*** ConvexOS 11.0 and later**** "Todd C. Miller" <millert@mroe.cs.colorado.edu> claims this** works on 9.1 as well.*/#ifdef _CONVEX_SOURCE# define BSD 1 /* include all the BSD defines */# define HASUNAME 1 /* use System V uname(2) system call */# define HASSETSID 1 /* has POSIX setsid(2) call */# define NEEDGETOPT 1 /* need replacement for getopt(3) */# define LA_TYPE LA_FLOAT# define SFS_TYPE SFS_VFS /* use <sys/vfs.h> statfs() implementation */# ifndef _PATH_SENDMAILCF# define _PATH_SENDMAILCF "/usr/lib/sendmail.cf"# endif# ifndef S_IREAD# define S_IREAD _S_IREAD# define S_IWRITE _S_IWRITE# define S_IEXEC _S_IEXEC# define S_IFMT _S_IFMT# define S_IFCHR _S_IFCHR# define S_IFBLK _S_IFBLK# endif# ifndef IDENTPROTO# define IDENTPROTO 0 /* TCP/IP implementation is broken */# endif#endif/*** RISC/os 4.52**** Gives a ton of warning messages, but otherwise compiles.*/#ifdef RISCOS# define HASUNSETENV 1 /* has unsetenv(3) call */# ifndef HASFLOCK# define HASFLOCK 1 /* has flock(2) call */# endif# define WAITUNION 1 /* use "union wait" as wait argument type */# define NEEDGETOPT 1 /* need a replacement for getopt(3) */# define LA_TYPE LA_INT# define LA_AVENRUN "avenrun"# define _PATH_UNIX "/unix"# undef WIFEXITED# define setpgid setpgrpextern int errno;typedef int pid_t;#define SIGFUNC_DEFINEDtypedef int (*sigfunc_t)();extern char *getenv();extern void *malloc();#endif/*** Linux 0.99pl10 and above...**** Thanks to, in reverse order of contact:**** John Kennedy <warlock@csuchico.edu>** Florian La Roche <rzsfl@rz.uni-sb.de>** Karl London <karl@borg.demon.co.uk>**** Last compiled against: [03/02/94 @ 05:34 PM (Wednesday)]** sendmail 8.6.6.b9 named 4.9.2-931205-p1 db-1.73** gcc 2.5.8 libc.so.4.5.19** slackware 1.1.2 linux 0.99.15*/#ifdef __linux__# define BSD 1 /* include BSD defines */# define NEEDGETOPT 1 /* need a replacement for getopt(3) */# define HASUNAME 1 /* use System V uname(2) system call */# define HASUNSETENV 1 /* has unsetenv(3) call */# define ERRLIST_PREDEFINED /* don't declare sys_errlist */# define GIDSET_T gid_t /* from <linux/types.h> */# ifndef LA_TYPE# define LA_TYPE LA_PROCSTR# endif# define SFS_TYPE SFS_VFS /* use <sys/vfs.h> statfs() impl */# include <sys/sysmacros.h># undef atol /* wounded in <stdlib.h> */#endif/*** DELL SVR4 Issue 2.2, and others** From Kimmo Suominen <kim@grendel.lut.fi>**** It's on #ifdef DELL_SVR4 because Solaris also gets __svr4__** defined, and the definitions conflict.**** Peter Wemm <peter@perth.DIALix.oz.au> claims that the setreuid** trick works on DELL 2.2 (SVR4.0/386 version 4.0) and ESIX 4.0.3A** (SVR4.0/386 version 3.0).*/#ifdef DELL_SVR4 /* no changes necessary */ /* see general __svr4__ defines below */#endif/*** Apple A/UX 3.0*/#ifdef _AUX_SOURCE# include <sys/sysmacros.h># define BSD /* has BSD routines */# define HASUNAME 1 /* use System V uname(2) system call */# define HASSETVBUF 1 /* we have setvbuf(3) in libc */# define SIGFUNC_DEFINED /* sigfunc_t already defined */# ifndef IDENTPROTO# define IDENTPROTO 0 /* TCP/IP implementation is broken */# endif# define FORK fork# ifndef _PATH_SENDMAILCF# define _PATH_SENDMAILCF "/usr/lib/sendmail.cf"# endif# ifndef LA_TYPE# define LA_TYPE LA_ZERO# endif# define SFS_TYPE SFS_VFS /* use <sys/vfs.h> statfs() implementation */# undef WIFEXITED# undef WEXITSTATUS#endif/*** Encore UMAX V**** Not extensively tested.*/#ifdef UMAXV# include <limits.h># define HASUNAME 1 /* use System V uname(2) system call */# define HASSETVBUF 1 /* we have setvbuf(3) in libc */# define HASINITGROUPS 1 /* has initgroups(3) call */# define HASGETUSERSHELL 0 /* does not have getusershell(3) call */# define SYS5SIGNALS 1 /* SysV signal semantics -- reset on each sig */# define SYS5SETPGRP 1 /* use System V setpgrp(2) syscall */# define FORK fork /* no vfork(2) primitive available */# define SFS_TYPE SFS_4ARGS /* four argument statfs() call */# define MAXPATHLEN PATH_MAXextern struct passwd *getpwent(), *getpwnam(), *getpwuid();extern struct group *getgrent(), *getgrnam(), *getgrgid();# undef WIFEXITED# undef WEXITSTATUS#endif/*** Stardent Titan 3000 running TitanOS 4.2.**** Must be compiled in "cc -43" mode.**** From Kate Hedstrom <kate@ahab.rutgers.edu>.**** Note the tweaking below after the BSD defines are set.*/#ifdef titan# define setpgid setpgrptypedef int pid_t;# undef WIFEXITED# undef WEXITSTATUS#endif/*** Sequent DYNIX 3.2.0**** From Jim Davis <jdavis@cs.arizona.edu>.*/#ifdef sequent# define BSD 1# define HASUNSETENV 1# define BSD4_3 1 /* to get signal() in conf.c */# define WAITUNION 1# define LA_TYPE LA_FLOAT# ifdef _POSIX_VERSION# undef _POSIX_VERSION /* set in <unistd.h> */# endif# undef HASSETVBUF /* don't actually have setvbuf(3) */# define setpgid setpgrp/* Have to redefine WIFEXITED to take an int, to work with waitfor() */# undef WIFEXITED# define WIFEXITED(s) (((union wait*)&(s))->w_stopval != WSTOPPED && \ ((union wait*)&(s))->w_termsig == 0)# define WEXITSTATUS(s) (((union wait*)&(s))->w_retcode)typedef int pid_t;# define isgraph(c) (isprint(c) && (c != ' '))# ifndef IDENTPROTO# define IDENTPROTO 0 /* TCP/IP implementation is broken */# endif# ifndef _PATH_UNIX# define _PATH_UNIX "/dynix"# endif# ifndef _PATH_SENDMAILCF# define _PATH_SENDMAILCF "/usr/lib/sendmail.cf"# endif#endif/*** Sequent DYNIX/ptx v2.0 (and higher)**** For DYNIX/ptx v1.x, undefine HASSETREUID.**** From Tim Wright <timw@sequent.com>.*/#ifdef _SEQUENT_# define SYSTEM5 1 /* include all the System V defines */# define HASSETSID 1 /* has POSIX setsid(2) call */# define HASINITGROUPS 1 /* has initgroups(3) call */# define HASSETREUID 1 /* has setreuid(2) call */# define HASGETUSERSHELL 0 /* does not have getusershell(3) call */# define GIDSET_T gid_t# define LA_TYPE LA_INT# define SFS_TYPE SFS_STATFS /* use <sys/statfs.h> statfs() impl */# undef SETPROCTITLE# ifndef IDENTPROTO# define IDENTPROTO 0 /* TCP/IP implementation is broken */# endif# ifndef _PATH_SENDMAILCF# define _PATH_SENDMAILCF "/usr/lib/sendmail.cf"# endif# ifndef _PATH_SENDMAILPID# define _PATH_SENDMAILPID "/etc/sendmail.pid"# endif#endif/*** Cray Unicos**** Ported by David L. Kensiski, Sterling Sofware <kensiski@nas.nasa.gov>*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -