diff options
author | gshapiro <gshapiro@FreeBSD.org> | 2002-02-17 21:56:45 +0000 |
---|---|---|
committer | gshapiro <gshapiro@FreeBSD.org> | 2002-02-17 21:56:45 +0000 |
commit | 8449595fe97f4474b9b9a7e4edee1ef35dcff393 (patch) | |
tree | e7a33b132264d449a512ddf4a8685df097669c1d /contrib/sendmail/include/sendmail | |
parent | 289b381b31415647269c7520d881017e2dcb27f1 (diff) | |
download | FreeBSD-src-8449595fe97f4474b9b9a7e4edee1ef35dcff393.zip FreeBSD-src-8449595fe97f4474b9b9a7e4edee1ef35dcff393.tar.gz |
Import sendmail 8.12.2
Diffstat (limited to 'contrib/sendmail/include/sendmail')
-rw-r--r-- | contrib/sendmail/include/sendmail/mailstats.h | 11 | ||||
-rw-r--r-- | contrib/sendmail/include/sendmail/pathnames.h | 64 | ||||
-rw-r--r-- | contrib/sendmail/include/sendmail/sendmail.h | 103 |
3 files changed, 80 insertions, 98 deletions
diff --git a/contrib/sendmail/include/sendmail/mailstats.h b/contrib/sendmail/include/sendmail/mailstats.h index 830061d..9a8a635 100644 --- a/contrib/sendmail/include/sendmail/mailstats.h +++ b/contrib/sendmail/include/sendmail/mailstats.h @@ -10,10 +10,14 @@ * the sendmail distribution. * * - * $Id: mailstats.h,v 8.13 1999/05/22 02:29:10 ca Exp $ + * $Id: mailstats.h,v 8.18 2001/11/21 13:39:10 gshapiro Exp $ */ -#define STAT_VERSION 3 +#if _FFR_QUARANTINE +# define STAT_VERSION 4 +#else /* _FFR_QUARANTINE */ +# define STAT_VERSION 3 +#endif /* _FFR_QUARANTINE */ #define STAT_MAGIC 0x1B1DE /* @@ -35,4 +39,7 @@ struct statistics long stat_bt[MAXMAILERS]; /* kbytes to each mailer */ long stat_nr[MAXMAILERS]; /* # rejects by each mailer */ long stat_nd[MAXMAILERS]; /* # discards by each mailer */ +#if _FFR_QUARANTINE + long stat_nq[MAXMAILERS]; /* # quarantines by each mailer */ +#endif /* _FFR_QUARANTINE */ }; diff --git a/contrib/sendmail/include/sendmail/pathnames.h b/contrib/sendmail/include/sendmail/pathnames.h index 9f99f6c..54efd32 100644 --- a/contrib/sendmail/include/sendmail/pathnames.h +++ b/contrib/sendmail/include/sendmail/pathnames.h @@ -1,5 +1,5 @@ /*- - * Copyright (c) 1998-2000 Sendmail, Inc. and its suppliers. + * Copyright (c) 1998-2001 Sendmail, Inc. and its suppliers. * All rights reserved. * Copyright (c) 1990, 1993 * The Regents of the University of California. All rights reserved. @@ -9,28 +9,54 @@ * the sendmail distribution. * * - * $Id: pathnames.h,v 8.16.8.8 2000/09/28 21:26:39 gshapiro Exp $ + * $Id: pathnames.h,v 8.35 2001/03/23 22:09:44 ca Exp $ */ +#ifndef SM_PATHNAMES_H +# define SM_PATHNAMES_H -# ifndef _PATH_SENDMAILCF -# if defined(USE_VENDOR_CF_PATH) && defined(_PATH_VENDOR_CF) -# define _PATH_SENDMAILCF _PATH_VENDOR_CF -# else /* defined(USE_VENDOR_CF_PATH) && defined(_PATH_VENDOR_CF) */ -# define _PATH_SENDMAILCF "/etc/mail/sendmail.cf" -# endif /* defined(USE_VENDOR_CF_PATH) && defined(_PATH_VENDOR_CF) */ -# endif /* ! _PATH_SENDMAILCF */ -# ifndef _PATH_SENDMAILPID -# ifdef BSD4_4 -# define _PATH_SENDMAILPID "/var/run/sendmail.pid" -# else /* BSD4_4 */ -# define _PATH_SENDMAILPID "/etc/mail/sendmail.pid" -# endif /* BSD4_4 */ -# endif /* ! _PATH_SENDMAILPID */ +# ifndef _PATH_SENDMAILCF +# if defined(USE_VENDOR_CF_PATH) && defined(_PATH_VENDOR_CF) +# define _PATH_SENDMAILCF _PATH_VENDOR_CF +# else /* defined(USE_VENDOR_CF_PATH) && defined(_PATH_VENDOR_CF) */ +# define _PATH_SENDMAILCF "/etc/mail/sendmail.cf" +# endif /* defined(USE_VENDOR_CF_PATH) && defined(_PATH_VENDOR_CF) */ +# endif /* ! _PATH_SENDMAILCF */ -# ifndef _PATH_HOSTS -# define _PATH_HOSTS "/etc/hosts" -# endif /* ! _PATH_HOSTS */ +# ifndef _PATH_SENDMAILPID +# ifdef BSD4_4 +# define _PATH_SENDMAILPID "/var/run/sendmail.pid" +# else /* BSD4_4 */ +# define _PATH_SENDMAILPID "/etc/mail/sendmail.pid" +# endif /* BSD4_4 */ +# endif /* ! _PATH_SENDMAILPID */ +# ifndef _PATH_SENDMAIL +# define _PATH_SENDMAIL "/usr/lib/sendmail" +# endif /* ! _PATH_SENDMAIL */ +# ifndef _PATH_MAILDIR +# define _PATH_MAILDIR "/var/spool/mail" +# endif /* ! _PATH_MAILDIR */ + +# ifndef _PATH_LOCTMP +# define _PATH_LOCTMP "/tmp/local.XXXXXX" +# endif /* ! _PATH_LOCTMP */ + +# ifndef _PATH_HOSTS +# define _PATH_HOSTS "/etc/hosts" +# endif /* ! _PATH_HOSTS */ + + + +# ifndef _DIR_SENDMAILCF +# define _DIR_SENDMAILCF "/etc/mail/" +# endif /* ! _DIR_SENDMAILCF */ + +# define SM_GET_RIGHT_CF 0 /* get "right" .cf */ +# define SM_GET_SENDMAIL_CF 1 /* always use sendmail.cf */ +# define SM_GET_SUBMIT_CF 2 /* always use submit.cf */ + +extern char *getcfname __P((int, int, int, char *)); +#endif /* ! SM_PATHNAMES_H */ diff --git a/contrib/sendmail/include/sendmail/sendmail.h b/contrib/sendmail/include/sendmail/sendmail.h index 395b895..bbd3177 100644 --- a/contrib/sendmail/include/sendmail/sendmail.h +++ b/contrib/sendmail/include/sendmail/sendmail.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 1998-2000 Sendmail, Inc. and its suppliers. + * Copyright (c) 1998-2001 Sendmail, Inc. and its suppliers. * All rights reserved. * Copyright (c) 1983, 1995-1997 Eric P. Allman. All rights reserved. * Copyright (c) 1988, 1993 @@ -10,23 +10,18 @@ * the sendmail distribution. * * - * $Id: sendmail.h,v 8.34.4.8 2001/06/01 05:06:51 gshapiro Exp $ + * $Id: sendmail.h,v 8.67 2001/09/08 01:20:57 gshapiro Exp $ */ /* ** SENDMAIL.H -- Global definitions for sendmail. */ -#if SFIO -# include <sfio/stdio.h> -#else /* SFIO */ -# include <stdio.h> -#endif /* SFIO */ -#include <string.h> +#include <stdio.h> +#include <sm/bitops.h> +#include <sm/io.h> +#include <sm/string.h> #include "conf.h" -#include "sendmail/errstring.h" -#include "sendmail/useful.h" - /********************************************************************** ** Table sizes, etc.... @@ -37,45 +32,6 @@ #endif /* ! MAXMAILERS */ /* -** Data structure for bit maps. -** -** Each bit in this map can be referenced by an ascii character. -** This is 256 possible bits, or 32 8-bit bytes. -*/ - -#define BITMAPBITS 256 /* number of bits in a bit map */ -#define BYTEBITS 8 /* number of bits in a byte */ -#define BITMAPBYTES (BITMAPBITS / BYTEBITS) /* number of bytes in bit map */ - -/* internal macros */ -#define _BITWORD(bit) ((bit) / (BYTEBITS * sizeof (int))) -#define _BITBIT(bit) ((unsigned int)1 << ((bit) % (BYTEBITS * sizeof (int)))) - -typedef unsigned int BITMAP256[BITMAPBYTES / sizeof (int)]; - -/* properly case and truncate bit */ -#define bitidx(bit) ((unsigned int) (bit) & 0xff) - -/* test bit number N */ -#define bitnset(bit, map) ((map)[_BITWORD(bit)] & _BITBIT(bit)) - -/* set bit number N */ -#define setbitn(bit, map) (map)[_BITWORD(bit)] |= _BITBIT(bit) - -/* clear bit number N */ -#define clrbitn(bit, map) (map)[_BITWORD(bit)] &= ~_BITBIT(bit) - -/* clear an entire bit map */ -#define clrbitmap(map) memset((char *) map, '\0', BITMAPBYTES) - - -/* -** Utility macros -*/ - -/* return number of bytes left in a buffer */ -#define SPACELEFT(buf, ptr) (sizeof buf - ((ptr) - buf)) -/* ** Flags passed to safefile/safedirpath. */ @@ -85,7 +41,7 @@ typedef unsigned int BITMAP256[BITMAPBYTES / sizeof (int)]; #define SFF_ROOTOK 0x00000004L /* ok for root to own this file */ #define SFF_RUNASREALUID 0x00000008L /* if no ctladdr, run as real uid */ #define SFF_NOPATHCHECK 0x00000010L /* don't bother checking dir path */ -#define SFF_SETUIDOK 0x00000020L /* setuid files are ok */ +#define SFF_SETUIDOK 0x00000020L /* set-user-ID files are ok */ #define SFF_CREAT 0x00000040L /* ok to create file if necessary */ #define SFF_REGONLY 0x00000080L /* regular files only */ #define SFF_SAFEDIRPATH 0x00000100L /* no writable directories allowed */ @@ -108,6 +64,7 @@ typedef unsigned int BITMAP256[BITMAPBYTES / sizeof (int)]; extern int safefile __P((char *, UID_T, GID_T, char *, long, int, struct stat *)); extern int safedirpath __P((char *, UID_T, GID_T, char *, long, int, int)); extern int safeopen __P((char *, int, int, long)); +extern SM_FILE_T*safefopen __P((char *, int, int, long)); extern int dfopen __P((char *, int, int, long)); extern bool filechanged __P((char *, int, struct stat *)); @@ -116,6 +73,7 @@ extern bool filechanged __P((char *, int, struct stat *)); ** ** Hopefully nobody uses these. */ + #define DBS_SAFE 0 #define DBS_ASSUMESAFECHOWN 1 #define DBS_GROUPWRITABLEDIRPATHSAFE 2 @@ -144,42 +102,33 @@ extern bool filechanged __P((char *, int, struct stat *)); #define DBS_HELPFILEINUNSAFEDIRPATH 25 #define DBS_FORWARDFILEINUNSAFEDIRPATHSAFE 26 #define DBS_INCLUDEFILEINUNSAFEDIRPATHSAFE 27 -#define DBS_RUNPROGRAMINUNSAFEDIRPATH 28 /* Not used yet */ +#define DBS_RUNPROGRAMINUNSAFEDIRPATH 28 #define DBS_RUNWRITABLEPROGRAM 29 #define DBS_INCLUDEFILEINUNSAFEDIRPATH 30 #define DBS_NONROOTSAFEADDR 31 #define DBS_TRUSTSTICKYBIT 32 #define DBS_DONTWARNFORWARDFILEINUNSAFEDIRPATH 33 #define DBS_INSUFFICIENTENTROPY 34 -#if _FFR_UNSAFE_SASL -# define DBS_GROUPREADABLESASLFILE 35 -#endif /* _FFR_UNSAFE_SASL */ -#if _FFR_UNSAFE_WRITABLE_INCLUDE -# define DBS_GROUPWRITABLEFORWARDFILE 36 -# define DBS_GROUPWRITABLEINCLUDEFILE 37 -# define DBS_WORLDWRITABLEFORWARDFILE 38 -# define DBS_WORLDWRITABLEINCLUDEFILE 39 -#endif /* _FFR_UNSAFE_WRITABLE_INCLUDE */ +#define DBS_GROUPREADABLESASLDBFILE 35 +#define DBS_GROUPWRITABLESASLDBFILE 36 +#define DBS_GROUPWRITABLEFORWARDFILE 37 +#define DBS_GROUPWRITABLEINCLUDEFILE 38 +#define DBS_WORLDWRITABLEFORWARDFILE 39 +#define DBS_WORLDWRITABLEINCLUDEFILE 40 +#define DBS_GROUPREADABLEKEYFILE 41 +#if _FFR_GROUPREADABLEAUTHINFOFILE +# define DBS_GROUPREADABLEAUTHINFOFILE 42 +#endif /* _FFR_GROUPREADABLEAUTHINFOFILE */ /* struct defining such things */ struct dbsval { - char *dbs_name; /* name of DontBlameSendmail flag */ - u_char dbs_flag; /* numeric level */ + char *dbs_name; /* name of DontBlameSendmail flag */ + unsigned char dbs_flag; /* numeric level */ }; -#if _FFR_DPRINTF -extern void dprintf __P((const char *, ...)); -extern int dflush __P((void)); -#else /* _FFR_DPRINTF */ -#define dprintf printf -#define dflush() fflush(stdout) -#endif /* _FFR_DPRINTF */ - -extern int sm_snprintf __P((char *, size_t, const char *, ...)); -extern int sm_vsnprintf __P((char *, size_t, const char *, va_list)); -extern char *quad_to_string __P((QUAD_T)); - -extern size_t strlcpy __P((char *, const char *, size_t)); -extern size_t strlcat __P((char *, const char *, size_t)); +/* Flags for submitmode */ +#define SUBMIT_UNKNOWN 0x0000 /* unknown agent type */ +#define SUBMIT_MTA 0x0001 /* act like a message transfer agent */ +#define SUBMIT_MSA 0x0002 /* act like a message submission agent */ |