X-Git-Url: https://git.exim.org/exim.git/blobdiff_plain/18481de384caecff421f23f715be916403f5d0ee..4c04137d73637107669e02b21f890387aaa2ef34:/src/src/macros.h diff --git a/src/src/macros.h b/src/src/macros.h index dbc49f01e..53ffe1b2a 100644 --- a/src/src/macros.h +++ b/src/src/macros.h @@ -15,6 +15,11 @@ a string as a text string. This is sometimes useful for debugging output. */ /* Number of elements of an array */ #define nelem(arr) (sizeof(arr) / sizeof(*arr)) +/* Maximum of two items */ +#ifndef MAX +# define MAX(a,b) ((a) > (b) ? (a) : (b)) +#endif + /* When running in the test harness, the load average is fudged. */ @@ -320,6 +325,13 @@ for having to swallow the rest of an SMTP message is whether the value is #define END_NOTENDED 3 /* Message reading not yet ended */ #define END_SIZE 4 /* Reading ended because message too big */ #define END_WERROR 5 /* Write error while reading the message */ +#define END_PROTOCOL 6 /* Protocol error in CHUNKING sequence */ + +/* result codes for bdat_getc() (which can also return EOF) */ + +#define EOD (-2) +#define ERR (-3) + /* Bit masks for debug and log selectors */ @@ -340,7 +352,7 @@ and the first word of the log selector. */ #define BIT_TEST(s,z,n) (((s)[BITWORD(n)] & BITMASK(n)) != 0) /* Used in globals.c for initializing bit_table structures. T will be either -D or L correspondong to the debug and log selector bits declared below. */ +D or L corresponding to the debug and log selector bits declared below. */ #define BIT_TABLE(T,name) { US #name, T##i_##name } @@ -834,10 +846,11 @@ enum { #define topt_add_delivery_date 0x002 #define topt_add_envelope_to 0x004 #define topt_use_crlf 0x008 /* Terminate lines with CRLF */ -#define topt_end_dot 0x010 /* Send terminting dot line */ +#define topt_end_dot 0x010 /* Send terminating dot line */ #define topt_no_headers 0x020 /* Omit headers */ #define topt_no_body 0x040 /* Omit body */ #define topt_escape_headers 0x080 /* Apply escape check to headers */ +#define topt_use_bdat 0x100 /* prepend chunks with RFC3030 BDAT header */ /* Flags for recipient_block, used in DSN support */ @@ -953,6 +966,7 @@ enum { FILTER_UNSET, FILTER_FORWARD, FILTER_EXIM, FILTER_SIEVE }; #define PEER_OFFERED_DSN BIT(4) #define PEER_OFFERED_PIPE BIT(5) #define PEER_OFFERED_SIZE BIT(6) +#define PEER_OFFERED_CHUNKING BIT(7) /* End of macros.h */