X-Git-Url: https://git.exim.org/exim.git/blobdiff_plain/4a90d4879978fe062e0539da0942c3f9176f5b9b..cd8cb71deb2d653228cc037cf91ecab980acdcd0:/src/src/macro_predef.c diff --git a/src/src/macro_predef.c b/src/src/macro_predef.c index 9c3d34a96..9b354d345 100644 --- a/src/src/macro_predef.c +++ b/src/src/macro_predef.c @@ -2,9 +2,10 @@ * Exim - an Internet mail transport agent * *************************************************/ +/* Copyright (c) The Exim Maintainers 2020 - 2023 */ /* Copyright (c) Jeremy Harris 1995 - 2018 */ -/* Copyright (c) The Exim Maintainers 2020 */ /* See the file NOTICE for conditions of use and distribution. */ +/* SPDX-License-Identifier: GPL-2.0-or-later */ /* Create a static data structure with the predefined macros, to be included in the main Exim build */ @@ -72,7 +73,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 @@ -118,6 +119,12 @@ due to conflicts with other common macros. */ #ifdef SUPPORT_PAM builtin_macro_create(US"_HAVE_PAM"); #endif +#ifdef RADIUS_CONFIG_FILE + builtin_macro_create(US"_HAVE_RADIUS"); +#endif +#ifdef CYRUS_PWCHECK_SOCKET + builtin_macro_create(US"_HAVE_PWCHECK"); +#endif #ifdef EXIM_PERL builtin_macro_create(US"_HAVE_PERL"); #endif @@ -153,6 +160,9 @@ due to conflicts with other common macros. */ #ifndef DISABLE_DNSSEC builtin_macro_create(US"_HAVE_DNSSEC"); #endif +#ifndef DISABLE_ESMTP_LIMITS + builtin_macro_create(US"_HAVE_ESMTP_LIMITS"); +#endif #ifndef DISABLE_EVENT builtin_macro_create(US"_HAVE_EVENT"); #endif @@ -183,7 +193,7 @@ due to conflicts with other common macros. */ #ifdef SUPPORT_SPF builtin_macro_create(US"_HAVE_SPF"); #endif -#if defined(EXPERIMENTAL_SRS_ALT) || defined(SUPPORT_SRS) +#ifdef SUPPORT_SRS builtin_macro_create(US"_HAVE_SRS"); #endif #ifdef EXPERIMENTAL_ARC @@ -204,6 +214,9 @@ due to conflicts with other common macros. */ #ifndef DISABLE_TLS_RESUME builtin_macro_create(US"_HAVE_TLS_RESUME"); #endif +#ifdef EXPERIMENTAL_XCLIENT + builtin_macro_create(US"_HAVE_XCLIENT"); +#endif #ifdef LOOKUP_LSEARCH builtin_macro_create(US"_HAVE_LOOKUP_LSEARCH"); @@ -233,9 +246,6 @@ due to conflicts with other common macros. */ #ifdef LOOKUP_LDAP builtin_macro_create(US"_HAVE_LOOKUP_LDAP"); #endif -#ifdef EXPERIMENTAL_LMDB - builtin_macro_create(US"_HAVE_LOOKUP_LMDB"); -#endif #ifdef LOOKUP_MYSQL builtin_macro_create(US"_HAVE_LOOKUP_MYSQL"); #endif @@ -279,11 +289,32 @@ 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_QUEUEFILE + builtin_macro_create(US"_EXP_QUEUEFILE"); +#endif } @@ -314,7 +345,9 @@ main(void) { printf("#include \"exim.h\"\n"); features(); +exp_features(); options(); +expansions(); params(); printf("macro_item * macros = &p%d;\n", mp_index-1);