TLS: preload configuration items
[users/heiko/exim.git] / src / src / globals.c
index 654c39b4fbc50689becd2d0730365eef546c9ef9..240c2eb80a6d2dbfc559f969f587094ffab7a213 100644 (file)
@@ -143,6 +143,8 @@ uschar *tls_resumption_hosts   = NULL;
 uschar *tls_try_verify_hosts   = NULL;
 uschar *tls_verify_certificates= US"system";
 uschar *tls_verify_hosts       = NULL;
+int     tls_watch_fd          = -1;
+time_t  tls_watch_trigger_time = (time_t)0;
 #else  /*DISABLE_TLS*/
 uschar *tls_advertise_hosts    = NULL;
 #endif
@@ -307,6 +309,7 @@ struct global_flags f =
 #endif
        .smtp_in_pipelining_advertised = FALSE,
        .smtp_in_pipelining_used = FALSE,
+       .smtp_in_quit           = FALSE,
        .spool_file_wireformat  = FALSE,
        .submission_mode        = FALSE,
        .suppress_local_fixups  = FALSE,
@@ -729,6 +732,8 @@ uid_t   config_uid             = 0;
 
 int     connection_max_messages= -1;
 uschar *continue_proxy_cipher  = NULL;
+BOOL    continue_proxy_dane    = FALSE;
+uschar *continue_proxy_sni     = NULL;
 uschar *continue_hostname      = NULL;
 uschar *continue_host_address  = NULL;
 int     continue_sequence      = 1;
@@ -1073,6 +1078,7 @@ bit_table log_options[]        = { /* must be in alphabetical order,
   BIT_TABLE(L, outgoing_port),
   BIT_TABLE(L, pid),
   BIT_TABLE(L, pipelining),
+  BIT_TABLE(L, protocol_detail),
 #if defined(SUPPORT_PROXY) || defined(SUPPORT_SOCKS)
   BIT_TABLE(L, proxy),
 #endif
@@ -1464,6 +1470,8 @@ uschar *smtp_etrn_command      = NULL;
 int     smtp_max_synprot_errors= 3;
 int     smtp_max_unknown_commands = 3;
 uschar *smtp_notquit_reason    = NULL;
+unsigned smtp_peer_options     = 0;
+unsigned smtp_peer_options_wrap= 0;
 uschar *smtp_ratelimit_hosts   = NULL;
 uschar *smtp_ratelimit_mail    = NULL;
 uschar *smtp_ratelimit_rcpt    = NULL;
@@ -1479,8 +1487,6 @@ int     smtp_rlr_base          = 0;
 double  smtp_rlr_factor        = 0.0;
 int     smtp_rlr_limit         = 0;
 int     smtp_rlr_threshold     = INT_MAX;
-unsigned smtp_peer_options     = 0;
-unsigned smtp_peer_options_wrap= 0;
 #ifdef SUPPORT_I18N
 uschar *smtputf8_advertise_hosts = US"*";      /* overridden under test-harness */
 #endif
@@ -1527,8 +1533,8 @@ uschar *srs_recipient          = NULL;
 int     string_datestamp_offset= -1;
 int     string_datestamp_length= 0;
 int     string_datestamp_type  = -1;
-uschar *submission_domain      = NULL;
-uschar *submission_name        = NULL;
+const uschar *submission_domain = NULL;
+const uschar *submission_name  = NULL;
 int     syslog_facility        = LOG_MAIL;
 uschar *syslog_processname     = US"exim";
 uschar *system_filter          = NULL;
@@ -1556,60 +1562,16 @@ struct timeval timestamp_startup;
 transport_instance  *transports = NULL;
 
 transport_instance  transport_defaults = {
-    .next =                    NULL,
-    .name =                    NULL,
-    .info =                    NULL,
-    .options_block =           NULL,
-    .driver_name =             NULL,
-    .setup =                   NULL,
+    /* All non-mentioned elements zero/NULL/FALSE */
     .batch_max =               1,
-    .batch_id =                        NULL,
-    .home_dir =                        NULL,
-    .current_dir =             NULL,
-    .expand_multi_domain =     NULL,
     .multi_domain =            TRUE,
-    .overrides_hosts =         FALSE,
     .max_addresses =           100,
     .connection_max_messages = 500,
-    .deliver_as_creator =      FALSE,
-    .disable_logging =         FALSE,
-    .initgroups =              FALSE,
-    .uid_set =                 FALSE,
-    .gid_set =                 FALSE,
     .uid =                     (uid_t)(-1),
     .gid =                     (gid_t)(-1),
-    .expand_uid =              NULL,
-    .expand_gid =              NULL,
-    .warn_message =            NULL,
-    .shadow =                  NULL,
-    .shadow_condition =                NULL,
-    .filter_command =          NULL,
-    .add_headers =             NULL,
-    .remove_headers =          NULL,
-    .return_path =             NULL,
-    .debug_string =            NULL,
-    .max_parallel =            NULL,
-    .message_size_limit =      NULL,
-    .headers_rewrite =         NULL,
-    .rewrite_rules =           NULL,
-    .rewrite_existflags =      0,
     .filter_timeout =          300,
-    .body_only =               FALSE,
-    .delivery_date_add =       FALSE,
-    .envelope_to_add =         FALSE,
-    .headers_only =            FALSE,
-    .rcpt_include_affixes =    FALSE,
-    .return_path_add =         FALSE,
-    .return_output =           FALSE,
-    .return_fail_output =      FALSE,
-    .log_output =              FALSE,
-    .log_fail_output =         FALSE,
-    .log_defer_output =                FALSE,
     .retry_use_local_part =    TRUE_UNSET,     /* retry_use_local_part: BOOL, but set neither
                                                 1 nor 0 so can detect unset */
-#ifndef DISABLE_EVENT
-   .event_action =             NULL
-#endif
 };
 
 int     transport_count;