X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=src%2Fsrc%2Fmacro_predef.c;h=757b375630b9a8125dc8006ad18d915d8849b9a0;hb=8f0d0a3138e138ffa6bcc94c8378f5eb22573f0e;hp=e96fef9386c6dc5b2a48a9aa81fca3a69f8cfba8;hpb=1a2e76e1676bf405a464a233950a95012533c227;p=user%2Fhenk%2Fcode%2Fexim.git diff --git a/src/src/macro_predef.c b/src/src/macro_predef.c index e96fef938..757b37563 100644 --- a/src/src/macro_predef.c +++ b/src/src/macro_predef.c @@ -3,6 +3,7 @@ *************************************************/ /* Copyright (c) Jeremy Harris 1995 - 2018 */ +/* Copyright (c) The Exim Maintainers 2020 */ /* See the file NOTICE for conditions of use and distribution. */ /* Create a static data structure with the predefined macros, to be @@ -71,7 +72,7 @@ options_from_list(optionlist * opts, unsigned nopt, const uschar * section, uschar * group) { const uschar * s; -uschar buf[64]; +uschar buf[EXIM_DRIVERNAME_MAX]; /* The 'previously-defined-substring' rule for macros in config file lines is done thus for these builtin macros: we know that the table @@ -161,7 +162,7 @@ due to conflicts with other common macros. */ #ifndef DISABLE_OCSP builtin_macro_create(US"_HAVE_OCSP"); #endif -#ifdef SUPPORT_PIPE_CONNECT +#ifndef DISABLE_PIPE_CONNECT builtin_macro_create(US"_HAVE_PIPE_CONNECT"); #endif #ifndef DISABLE_PRDR @@ -173,16 +174,16 @@ due to conflicts with other common macros. */ #ifdef SUPPORT_SOCKS builtin_macro_create(US"_HAVE_SOCKS"); #endif +#if defined(SUPPORT_SRS) + builtin_macro_create(US"_HAVE_NATIVE_SRS"); /* beware clash with _HAVE_SRS */ +#endif #ifdef TCP_FASTOPEN builtin_macro_create(US"_HAVE_TCP_FASTOPEN"); #endif -#ifdef EXPERIMENTAL_LMDB - builtin_macro_create(US"_HAVE_LMDB"); -#endif #ifdef SUPPORT_SPF builtin_macro_create(US"_HAVE_SPF"); #endif -#ifdef EXPERIMENTAL_SRS +#if defined(EXPERIMENTAL_SRS_ALT) || defined(SUPPORT_SRS) builtin_macro_create(US"_HAVE_SRS"); #endif #ifdef EXPERIMENTAL_ARC @@ -200,7 +201,7 @@ due to conflicts with other common macros. */ #ifdef EXPERIMENTAL_DSN_INFO builtin_macro_create(US"_HAVE_DSN_INFO"); #endif -#ifdef EXPERIMENTAL_TLS_RESUME +#ifndef DISABLE_TLS_RESUME builtin_macro_create(US"_HAVE_TLS_RESUME"); #endif @@ -222,6 +223,10 @@ due to conflicts with other common macros. */ #ifdef LOOKUP_IBASE builtin_macro_create(US"_HAVE_LOOKUP_IBASE"); #endif +#ifdef LOOKUP_LMDB + builtin_macro_create(US"_HAVE_LMDB"); + builtin_macro_create(US"_HAVE_LOOKUP_LMDB"); +#endif #ifdef LOOKUP_LDAP builtin_macro_create(US"_HAVE_LOOKUP_JSON"); #endif @@ -274,11 +279,38 @@ due to conflicts with other common macros. */ # endif #endif +features_acl(); +features_crypto(); + #ifdef WITH_CONTENT_SCAN features_malware(); #endif +} -features_crypto(); +static void +exp_features(void) +{ +#ifdef EXPERIMENTAL_ARC + builtin_macro_create(US"_EXP_ARC"); +#endif +#ifdef EXPERIMENTAL_BRIGHTMAIL + builtin_macro_create(US"_EXP_BMI"); +#endif +#ifdef EXPERIMENTAL_DCC + builtin_macro_create(US"_EXP_DCC"); +#endif +#ifdef EXPERIMENTAL_DSN_INFO + builtin_macro_create(US"_EXP_DSNI"); +#endif +#ifdef EXPERIMENTAL_ESMTP_LIMITS + builtin_macro_create(US"_EXP_LIMITS"); +#endif +#ifdef EXPERIMENTAL_QUEUEFILE + builtin_macro_create(US"_EXP_QUEUEFILE"); +#endif +#if defined(EXPERIMENTAL_SRS_ALT) + builtin_macro_create(US"_EXP_SRS"); +#endif } @@ -309,6 +341,7 @@ main(void) { printf("#include \"exim.h\"\n"); features(); +exp_features(); options(); params();