X-Git-Url: https://vcs.fsf.org/?a=blobdiff_plain;f=src%2Fsrc%2Fmacros.h;h=c1c4cc33f703faeedaf500d5268f86daf336443c;hb=8829633f58b90fda03309f65e6c099ed031005e3;hp=4db115533821e8ed6b6202563a3a098a635a9ada;hpb=0a49a7a4f1090b6f1ce1d0f9d969804c9226b53e;p=exim.git diff --git a/src/src/macros.h b/src/src/macros.h index 4db115533..c1c4cc33f 100644 --- a/src/src/macros.h +++ b/src/src/macros.h @@ -1,5 +1,3 @@ -/* $Cambridge: exim/src/src/macros.h,v 1.39 2009/11/16 19:50:37 nm4 Exp $ */ - /************************************************* * Exim - an Internet mail transport agent * *************************************************/ @@ -74,6 +72,11 @@ as unsigned. */ ((uschar)(c) > 127 && print_topbitchars)) +/* Convenience for testing strings */ + +#define streqic(Foo, Bar) (strcmpic(Foo, Bar) == 0) + + /* When built with TLS support, the act of flushing SMTP output becomes a no-op once an SSL session is in progress. */ @@ -96,7 +99,7 @@ don't make the file descriptors two-way. */ /* A macro to simplify testing bits in lookup types */ -#define mac_islookup(a,b) ((lookup_list[a].type & (b)) != 0) +#define mac_islookup(a,b) ((lookup_list[a]->type & (b)) != 0) /* Debugging control */ @@ -191,8 +194,9 @@ enum { RESET_NEXT, RESET_ANSWERS, RESET_AUTHORITY, RESET_ADDITIONAL }; /* Argument values for the time-of-day function */ -enum { tod_log, tod_log_bare, tod_log_zone, tod_log_datestamp, - tod_zone, tod_full, tod_bsdin, tod_mbx, tod_epoch, tod_zulu }; +enum { tod_log, tod_log_bare, tod_log_zone, tod_log_datestamp_daily, + tod_log_datestamp_monthly, tod_zone, tod_full, tod_bsdin, + tod_mbx, tod_epoch, tod_zulu }; /* For identifying types of driver */ @@ -699,7 +703,6 @@ local_scan.h */ #define LOG_MAIN 1 /* Write to the main log */ #define LOG_PANIC 2 /* Write to the panic log */ #define LOG_PANIC_DIE 6 /* Write to the panic log and then die */ -#define LOG_PROCESS 8 /* Write to the process log */ #define LOG_REJECT 16 /* Write to the reject log, with headers */ #define LOG_SENDER 32 /* Add raw sender to the message */ #define LOG_RECIPIENTS 64 /* Add raw recipients to the message */ @@ -707,6 +710,9 @@ local_scan.h */ #define LOG_CONFIG_FOR (256+128) /* Add " for" instead of ":\n" */ #define LOG_CONFIG_IN (512+128) /* Add " in line x[ of file y]" */ +/* and for debug_bits() logging action control: */ +#define DEBUG_FROM_CONFIG 0x0001 + /* SMTP command identifiers for the smtp_connection_had field that records the most recent SMTP commands. Must be kept in step with the list of names in smtp_in.c that is used for creating the smtp_no_mail logging action. SCH_NONE @@ -841,19 +847,4 @@ explicit port number. */ enum { FILTER_UNSET, FILTER_FORWARD, FILTER_EXIM, FILTER_SIEVE }; -/* C99 defines va_copy() for copying a varargs ap so that it can be reused, -since on some platforms multiple iterations of va_start()/va_end() are not -supported. But va_copy() is itself not so portable. Hack around it. -See portability notes at: http://unixpapa.com/incnote/variadic.html */ - -#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L -/* va_copy exists for us or the system is broken and we need OS hacks */ -#elif defined(va_copy) -/* trust it; hope that va_copy is always a macro when defined */ -#elif !defined(va_copy) && defined(__va_copy) -#define va_copy(dest, src) __va_copy(dest, src) -#else -#define va_copy(dest, src) do { memcpy(dest, src, sizeof(va_list) } while (0) -#endif - /* End of macros.h */