Deleted Added
full compact
sendmail.h (98841) sendmail.h (102528)
1/*
2 * Copyright (c) 1998-2002 Sendmail, Inc. and its suppliers.
3 * All rights reserved.
4 * Copyright (c) 1983, 1995-1997 Eric P. Allman. All rights reserved.
5 * Copyright (c) 1988, 1993
6 * The Regents of the University of California. All rights reserved.
7 *
8 * By using this file, you agree to the terms and conditions set

--- 34 unchanged lines hidden (view full) ---

43#if MONCONTROL
44# define SM_PROF(x) moncontrol(x)
45#else /* MONCONTROL */
46# define SM_PROF(x)
47#endif /* MONCONTROL */
48
49#ifdef _DEFINE
50# ifndef lint
1/*
2 * Copyright (c) 1998-2002 Sendmail, Inc. and its suppliers.
3 * All rights reserved.
4 * Copyright (c) 1983, 1995-1997 Eric P. Allman. All rights reserved.
5 * Copyright (c) 1988, 1993
6 * The Regents of the University of California. All rights reserved.
7 *
8 * By using this file, you agree to the terms and conditions set

--- 34 unchanged lines hidden (view full) ---

43#if MONCONTROL
44# define SM_PROF(x) moncontrol(x)
45#else /* MONCONTROL */
46# define SM_PROF(x)
47#endif /* MONCONTROL */
48
49#ifdef _DEFINE
50# ifndef lint
51SM_UNUSED(static char SmailId[]) = "@(#)$Id: sendmail.h,v 8.919.2.1 2002/06/21 20:25:22 ca Exp $";
51SM_UNUSED(static char SmailId[]) = "@(#)$Id: sendmail.h,v 8.919.2.4 2002/08/16 14:56:01 ca Exp $";
52# endif /* ! lint */
53#endif /* _DEFINE */
54
55#include "bf.h"
56#include "timers.h"
57#include <sm/exc.h>
58#include <sm/heap.h>
59#include <sm/debug.h>

--- 228 unchanged lines hidden (view full) ---

288#define QS_EXPANDED 7 /* expanded */
289#define QS_SENDER 8 /* message sender (MeToo) */
290#define QS_CLONED 9 /* addr cloned to split envelope */
291#define QS_DISCARDED 10 /* rcpt discarded (EF_DISCARD) */
292#define QS_REPLACED 11 /* maplocaluser()/UserDB replaced */
293#define QS_REMOVED 12 /* removed (removefromlist()) */
294#define QS_DUPLICATE 13 /* duplicate suppressed */
295#define QS_INCLUDED 14 /* :include: delivery */
52# endif /* ! lint */
53#endif /* _DEFINE */
54
55#include "bf.h"
56#include "timers.h"
57#include <sm/exc.h>
58#include <sm/heap.h>
59#include <sm/debug.h>

--- 228 unchanged lines hidden (view full) ---

288#define QS_EXPANDED 7 /* expanded */
289#define QS_SENDER 8 /* message sender (MeToo) */
290#define QS_CLONED 9 /* addr cloned to split envelope */
291#define QS_DISCARDED 10 /* rcpt discarded (EF_DISCARD) */
292#define QS_REPLACED 11 /* maplocaluser()/UserDB replaced */
293#define QS_REMOVED 12 /* removed (removefromlist()) */
294#define QS_DUPLICATE 13 /* duplicate suppressed */
295#define QS_INCLUDED 14 /* :include: delivery */
296#define QS_FATALERR 15 /* fatal error, don't deliver */
296
297/* address state testing primitives */
298#define QS_IS_OK(s) ((s) == QS_OK)
299#define QS_IS_SENT(s) ((s) == QS_SENT)
300#define QS_IS_BADADDR(s) ((s) == QS_BADADDR)
301#define QS_IS_QUEUEUP(s) ((s) == QS_QUEUEUP)
302#define QS_IS_RETRY(s) ((s) == QS_RETRY)
303#define QS_IS_VERIFIED(s) ((s) == QS_VERIFIED)

--- 596 unchanged lines hidden (view full) ---

900 time_t e_queuedelay; /* current delay */
901#endif /* _FFR_QUEUEDELAY */
902 long e_deliver_by; /* deliver by */
903 int e_dlvr_flag; /* deliver by flag */
904 SM_RPOOL_T *e_rpool; /* resource pool for this envelope */
905};
906
907/* values for e_flags */
297
298/* address state testing primitives */
299#define QS_IS_OK(s) ((s) == QS_OK)
300#define QS_IS_SENT(s) ((s) == QS_SENT)
301#define QS_IS_BADADDR(s) ((s) == QS_BADADDR)
302#define QS_IS_QUEUEUP(s) ((s) == QS_QUEUEUP)
303#define QS_IS_RETRY(s) ((s) == QS_RETRY)
304#define QS_IS_VERIFIED(s) ((s) == QS_VERIFIED)

--- 596 unchanged lines hidden (view full) ---

901 time_t e_queuedelay; /* current delay */
902#endif /* _FFR_QUEUEDELAY */
903 long e_deliver_by; /* deliver by */
904 int e_dlvr_flag; /* deliver by flag */
905 SM_RPOOL_T *e_rpool; /* resource pool for this envelope */
906};
907
908/* values for e_flags */
908#define EF_OLDSTYLE 0x0000001L /* use spaces (not commas) in hdrs */
909#define EF_INQUEUE 0x0000002L /* this message is fully queued */
910#define EF_NO_BODY_RETN 0x0000004L /* omit message body on error */
911#define EF_CLRQUEUE 0x0000008L /* disk copy is no longer needed */
912#define EF_SENDRECEIPT 0x0000010L /* send a return receipt */
913#define EF_FATALERRS 0x0000020L /* fatal errors occurred */
914#define EF_DELETE_BCC 0x0000040L /* delete Bcc: headers entirely */
915#define EF_RESPONSE 0x0000080L /* this is an error or return receipt */
916#define EF_RESENT 0x0000100L /* this message is being forwarded */
917#define EF_VRFYONLY 0x0000200L /* verify only (don't expand aliases) */
918#define EF_WARNING 0x0000400L /* warning message has been sent */
919#define EF_QUEUERUN 0x0000800L /* this envelope is from queue */
920#define EF_GLOBALERRS 0x0001000L /* treat errors as global */
921#define EF_PM_NOTIFY 0x0002000L /* send return mail to postmaster */
922#define EF_METOO 0x0004000L /* send to me too */
923#define EF_LOGSENDER 0x0008000L /* need to log the sender */
924#define EF_NORECEIPT 0x0010000L /* suppress all return-receipts */
925#define EF_HAS8BIT 0x0020000L /* at least one 8-bit char in body */
926#define EF_NL_NOT_EOL 0x0040000L /* don't accept raw NL as EOLine */
927#define EF_CRLF_NOT_EOL 0x0080000L /* don't accept CR-LF as EOLine */
928#define EF_RET_PARAM 0x0100000L /* RCPT command had RET argument */
929#define EF_HAS_DF 0x0200000L /* set when data file is instantiated */
930#define EF_IS_MIME 0x0400000L /* really is a MIME message */
931#define EF_DONT_MIME 0x0800000L /* never MIME this message */
932#define EF_DISCARD 0x1000000L /* discard the message */
933#define EF_TOOBIG 0x2000000L /* message is too big */
934#define EF_SPLIT 0x4000000L /* envelope has been split */
935#define EF_UNSAFE 0x8000000L /* unsafe: read from untrusted source */
909#define EF_OLDSTYLE 0x00000001L /* use spaces (not commas) in hdrs */
910#define EF_INQUEUE 0x00000002L /* this message is fully queued */
911#define EF_NO_BODY_RETN 0x00000004L /* omit message body on error */
912#define EF_CLRQUEUE 0x00000008L /* disk copy is no longer needed */
913#define EF_SENDRECEIPT 0x00000010L /* send a return receipt */
914#define EF_FATALERRS 0x00000020L /* fatal errors occurred */
915#define EF_DELETE_BCC 0x00000040L /* delete Bcc: headers entirely */
916#define EF_RESPONSE 0x00000080L /* this is an error or return receipt */
917#define EF_RESENT 0x00000100L /* this message is being forwarded */
918#define EF_VRFYONLY 0x00000200L /* verify only (don't expand aliases) */
919#define EF_WARNING 0x00000400L /* warning message has been sent */
920#define EF_QUEUERUN 0x00000800L /* this envelope is from queue */
921#define EF_GLOBALERRS 0x00001000L /* treat errors as global */
922#define EF_PM_NOTIFY 0x00002000L /* send return mail to postmaster */
923#define EF_METOO 0x00004000L /* send to me too */
924#define EF_LOGSENDER 0x00008000L /* need to log the sender */
925#define EF_NORECEIPT 0x00010000L /* suppress all return-receipts */
926#define EF_HAS8BIT 0x00020000L /* at least one 8-bit char in body */
927#define EF_NL_NOT_EOL 0x00040000L /* don't accept raw NL as EOLine */
928#define EF_CRLF_NOT_EOL 0x00080000L /* don't accept CR-LF as EOLine */
929#define EF_RET_PARAM 0x00100000L /* RCPT command had RET argument */
930#define EF_HAS_DF 0x00200000L /* set when data file is instantiated */
931#define EF_IS_MIME 0x00400000L /* really is a MIME message */
932#define EF_DONT_MIME 0x00800000L /* never MIME this message */
933#define EF_DISCARD 0x01000000L /* discard the message */
934#define EF_TOOBIG 0x02000000L /* message is too big */
935#define EF_SPLIT 0x04000000L /* envelope has been split */
936#define EF_UNSAFE 0x08000000L /* unsafe: read from untrusted source */
936
937#define DLVR_NOTIFY 0x01
938#define DLVR_RETURN 0x02
939#define DLVR_TRACE 0x10
940#define IS_DLVR_NOTIFY(e) (((e)->e_dlvr_flag & DLVR_NOTIFY) != 0)
941#define IS_DLVR_RETURN(e) (((e)->e_dlvr_flag & DLVR_RETURN) != 0)
942#define IS_DLVR_TRACE(e) (((e)->e_dlvr_flag & DLVR_TRACE) != 0)
943#define IS_DLVR_BY(e) ((e)->e_dlvr_flag != 0)

--- 137 unchanged lines hidden (view full) ---

1081#endif /* SM_HEAP_CHECK */
1082extern void macset __P((MACROS_T *, int, char *));
1083#define macget(mac, i) (mac)->mac_table[i]
1084extern void expand __P((char *, char *, size_t, ENVELOPE *));
1085extern int macid_parse __P((char *, char **));
1086#define macid(name) macid_parse(name, NULL)
1087extern char *macname __P((int));
1088extern char *macvalue __P((int, ENVELOPE *));
937
938#define DLVR_NOTIFY 0x01
939#define DLVR_RETURN 0x02
940#define DLVR_TRACE 0x10
941#define IS_DLVR_NOTIFY(e) (((e)->e_dlvr_flag & DLVR_NOTIFY) != 0)
942#define IS_DLVR_RETURN(e) (((e)->e_dlvr_flag & DLVR_RETURN) != 0)
943#define IS_DLVR_TRACE(e) (((e)->e_dlvr_flag & DLVR_TRACE) != 0)
944#define IS_DLVR_BY(e) ((e)->e_dlvr_flag != 0)

--- 137 unchanged lines hidden (view full) ---

1082#endif /* SM_HEAP_CHECK */
1083extern void macset __P((MACROS_T *, int, char *));
1084#define macget(mac, i) (mac)->mac_table[i]
1085extern void expand __P((char *, char *, size_t, ENVELOPE *));
1086extern int macid_parse __P((char *, char **));
1087#define macid(name) macid_parse(name, NULL)
1088extern char *macname __P((int));
1089extern char *macvalue __P((int, ENVELOPE *));
1089extern int rscheck __P((char *, char *, char *, ENVELOPE *, bool, bool, int, char *, char *));
1090extern int rscheck __P((char *, char *, char *, ENVELOPE *, int, int, char *, char *));
1090extern int rscap __P((char *, char *, char *, ENVELOPE *, char ***, char *, int));
1091extern void setclass __P((int, char *));
1092extern int strtorwset __P((char *, char **, int));
1093extern void translate_dollars __P((char *));
1094extern bool wordinclass __P((char *, int));
1095
1096/*
1097** Name canonification short circuit.

--- 459 unchanged lines hidden (view full) ---

1557#define RF_HEADERADDR 0x002 /* this is a header address */
1558#define RF_CANONICAL 0x004 /* strip comment information */
1559#define RF_ADDDOMAIN 0x008 /* OK to do domain extension */
1560#define RF_COPYPARSE 0x010 /* copy parsed user & host */
1561#define RF_COPYPADDR 0x020 /* copy print address */
1562#define RF_COPYALL (RF_COPYPARSE|RF_COPYPADDR)
1563#define RF_COPYNONE 0
1564
1091extern int rscap __P((char *, char *, char *, ENVELOPE *, char ***, char *, int));
1092extern void setclass __P((int, char *));
1093extern int strtorwset __P((char *, char **, int));
1094extern void translate_dollars __P((char *));
1095extern bool wordinclass __P((char *, int));
1096
1097/*
1098** Name canonification short circuit.

--- 459 unchanged lines hidden (view full) ---

1558#define RF_HEADERADDR 0x002 /* this is a header address */
1559#define RF_CANONICAL 0x004 /* strip comment information */
1560#define RF_ADDDOMAIN 0x008 /* OK to do domain extension */
1561#define RF_COPYPARSE 0x010 /* copy parsed user & host */
1562#define RF_COPYPADDR 0x020 /* copy print address */
1563#define RF_COPYALL (RF_COPYPARSE|RF_COPYPADDR)
1564#define RF_COPYNONE 0
1565
1566/*
1567** Flags passed to rscheck
1568*/
1565
1569
1570#define RSF_RMCOMM 0x0001 /* strip comments */
1571#define RSF_UNSTRUCTURED 0x0002 /* unstructured, ignore syntax errors */
1572#define RSF_COUNT 0x0004 /* count rejections (statistics)? */
1573
1566/*
1567** Flags passed to mime8to7 and putheader.
1568*/
1569
1570#define M87F_OUTER 0 /* outer context */
1571#define M87F_NO8BIT 0x0001 /* can't have 8-bit in this section */
1572#define M87F_DIGEST 0x0002 /* processing multipart/digest */
1573#define M87F_NO8TO7 0x0004 /* don't do 8->7 bit conversions */

--- 973 unchanged lines hidden ---
1574/*
1575** Flags passed to mime8to7 and putheader.
1576*/
1577
1578#define M87F_OUTER 0 /* outer context */
1579#define M87F_NO8BIT 0x0001 /* can't have 8-bit in this section */
1580#define M87F_DIGEST 0x0002 /* processing multipart/digest */
1581#define M87F_NO8TO7 0x0004 /* don't do 8->7 bit conversions */

--- 973 unchanged lines hidden ---