Fix DYNLOOKUP build for lsearch. Bug 3012
[exim.git] / src / src / globals.c
index 18988e9da2c5afa5a6b1d738b2f53f2922e4ee44..9f4053937e0db3f16b58fea7c8715b43b219356d 100644 (file)
@@ -5,6 +5,7 @@
 /* Copyright (c) The Exim Maintainers 2020 - 2022 */
 /* Copyright (c) University of Cambridge 1995 - 2018 */
 /* See the file NOTICE for conditions of use and distribution. */
+/* SPDX-License-Identifier: GPL-2.0-or-later */
 
 /* All the global variables are defined together in this one module, so
 that they are easy to find. */
@@ -234,6 +235,7 @@ struct global_flags f =
        .continue_more          = FALSE,
 
        .daemon_listen          = FALSE,
+       .daemon_scion           = FALSE,
        .debug_daemon           = FALSE,
        .deliver_firsttime      = FALSE,
        .deliver_force          = FALSE,
@@ -278,6 +280,7 @@ struct global_flags f =
        .no_mbox_unspool        = FALSE,
 #endif
        .no_multiline_responses = FALSE,
+       .notifier_socket_en     = TRUE,
 
        .parse_allow_group      = FALSE,
        .parse_found_group      = FALSE,
@@ -288,8 +291,6 @@ struct global_flags f =
 
        .queue_2stage           = FALSE,
        .queue_only_policy      = FALSE,
-       .queue_run_first_delivery = FALSE,
-       .queue_run_force        = FALSE,
        .queue_run_local        = FALSE,
        .queue_running          = FALSE,
        .queue_smtp             = FALSE,
@@ -386,7 +387,7 @@ BOOL    mua_wrapper            = FALSE;
 BOOL    preserve_message_logs  = FALSE;
 BOOL    print_topbitchars      = FALSE;
 BOOL    prod_requires_admin    = TRUE;
-#if defined(SUPPORT_PROXY) || defined(SUPPORT_SOCKS)
+#if defined(SUPPORT_PROXY) || defined(SUPPORT_SOCKS) || defined(EXPERIMETAL_XCLIENT)
 BOOL    proxy_session          = FALSE;
 #endif
 
@@ -994,11 +995,18 @@ uschar *host_lookup_msg        = US"";
 int     host_number            = 0;
 uschar *host_number_string     = NULL;
 uschar *host_reject_connection = NULL;
-tree_node *hostlist_anchor     = NULL;
-int     hostlist_count         = 0;
+uschar *hosts_connection_nolog = NULL;
+#ifdef SUPPORT_PROXY
+uschar *hosts_proxy            = NULL;
+#endif
 uschar *hosts_treat_as_local   = NULL;
 uschar *hosts_require_helo     = US"*";
-uschar *hosts_connection_nolog = NULL;
+#ifdef EXPERIMENTAL_XCLIENT
+uschar *hosts_xclient         = NULL;
+#endif
+tree_node *hostlist_anchor     = NULL;
+int     hostlist_count         = 0;
+
 
 int     ignore_bounce_errors_after = 10*7*24*60*60;  /* 10 weeks */
 uschar *ignore_fromline_hosts  = NULL;
@@ -1015,6 +1023,10 @@ uschar *keep_environment       = NULL;
 int     keep_malformed         = 4*24*60*60;    /* 4 days */
 
 uschar *eldap_dn               = NULL;
+const uschar *letter_digit_hyphen_dot =
+    US"abcdefghijklmnopqrstuvwxyz"
+      ".-0123456789"
+      "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
 #ifdef EXPERIMENTAL_ESMTP_LIMITS
 uschar *limits_advertise_hosts = US"*";
 #endif
@@ -1209,8 +1221,10 @@ uschar *override_pid_file_path = NULL;
 
 BOOL    panic_coredump        = FALSE;
 pcre2_general_context * pcre_gen_ctx = NULL;
-pcre2_compile_context * pcre_cmp_ctx = NULL;
-pcre2_match_context * pcre_mtc_ctx = NULL;
+pcre2_compile_context * pcre_gen_cmp_ctx = NULL;
+pcre2_match_context * pcre_gen_mtc_ctx = NULL;
+pcre2_general_context * pcre_mlc_ctx = NULL;
+pcre2_compile_context * pcre_mlc_cmp_ctx = NULL;
 
 uschar *percent_hack_domains   = NULL;
 uschar *pid_file_path          = US PID_FILE_PATH
@@ -1225,8 +1239,7 @@ int     process_info_len       = 0;
 uschar *process_log_path       = NULL;
 const uschar *process_purpose  = US"fresh-exec";
 
-#if defined(SUPPORT_PROXY) || defined(SUPPORT_SOCKS)
-uschar *hosts_proxy            = NULL;
+#if defined(SUPPORT_PROXY) || defined(SUPPORT_SOCKS) || defined(EXPERIMENTAL_XCLIENT)
 uschar *proxy_external_address = NULL;
 int     proxy_external_port    = 0;
 uschar *proxy_local_address    = NULL;
@@ -1239,6 +1252,8 @@ uschar *prvscheck_keynum       = NULL;
 uschar *prvscheck_result       = NULL;
 
 
+qrunner *qrunners             = NULL;
+
 const uschar *qualify_domain_recipient = NULL;
 uschar *qualify_domain_sender  = NULL;
 uschar *queue_domains          = NULL;
@@ -1314,9 +1329,10 @@ const pcre2_code *regex_SIZE         = NULL;
 #ifndef DISABLE_PIPE_CONNECT
 const pcre2_code *regex_EARLY_PIPE   = NULL;
 #endif
+int    regex_cachesize              = 0;
 const pcre2_code *regex_ismsgid      = NULL;
 const pcre2_code *regex_smtp_code    = NULL;
-const uschar *regex_vars[REGEX_VARS];
+const uschar *regex_vars[REGEX_VARS] = { NULL };
 #ifdef WHITELIST_D_MACROS
 const pcre2_code *regex_whitelisted_macro = NULL;
 #endif
@@ -1583,7 +1599,7 @@ transport_instance  transport_defaults = {
     /* All non-mentioned elements zero/NULL/FALSE */
     .batch_max =               1,
     .multi_domain =            TRUE,
-    .max_addresses =           100,
+    .max_addresses =           US"100",
     .connection_max_messages = 500,
     .uid =                     (uid_t)(-1),
     .gid =                     (gid_t)(-1),
@@ -1647,8 +1663,7 @@ uschar *version_string         = US"?";
 
 uschar *warn_message_file      = NULL;
 int     warning_count          = 0;
-uschar *warnmsg_delay          = NULL;
-uschar *warnmsg_recipients     = NULL;
-
+const uschar *warnmsg_delay    = NULL;
+const uschar *warnmsg_recipients = NULL;
 
 /*  End of globals.c */