X-Git-Url: https://git.exim.org/exim.git/blobdiff_plain/b6054898ace169a0e5143117397a4f666a5e7283..2f8e0a5f6b:/src/src/globals.c diff --git a/src/src/globals.c b/src/src/globals.c index fb0abb8fc..e96586048 100644 --- a/src/src/globals.c +++ b/src/src/globals.c @@ -141,8 +141,14 @@ uschar *tls_require_ciphers = NULL; uschar *tls_resumption_hosts = NULL; # endif uschar *tls_try_verify_hosts = NULL; +#if defined(SUPPORT_SYSDEFAULT_CABUNDLE) || !defined(USE_GNUTLS) uschar *tls_verify_certificates= US"system"; +#else +uschar *tls_verify_certificates= NULL; +#endif 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 @@ -221,6 +227,7 @@ struct global_flags f = .authentication_local = FALSE, .background_daemon = TRUE, + .bdat_readers_wanted = FALSE, .chunking_offered = FALSE, .config_changed = FALSE, @@ -704,6 +711,10 @@ unsigned chunking_data_left = 0; chunking_state_t chunking_state= CHUNKING_NOT_OFFERED; const pcre *regex_CHUNKING = NULL; +#ifdef EXPERIMENTAL_ESMTP_LIMITS +const pcre *regex_LIMITS = NULL; +#endif + uschar *client_authenticator = NULL; uschar *client_authenticated_id = NULL; uschar *client_authenticated_sender = NULL; @@ -736,6 +747,11 @@ uschar *continue_hostname = NULL; uschar *continue_host_address = NULL; int continue_sequence = 1; uschar *continue_transport = NULL; +#ifdef EXPERIMENTAL_ESMTP_LIMITS +unsigned continue_limit_mail = 0; +unsigned continue_limit_rcpt = 0; +unsigned continue_limit_rcptdom= 0; +#endif uschar *csa_status = NULL; cut_t cutthrough = { @@ -978,6 +994,7 @@ uschar *host_reject_connection = NULL; tree_node *hostlist_anchor = NULL; int hostlist_count = 0; uschar *hosts_treat_as_local = NULL; +uschar *hosts_require_helo = US"*"; uschar *hosts_connection_nolog = NULL; int ignore_bounce_errors_after = 10*7*24*60*60; /* 10 weeks */ @@ -995,6 +1012,9 @@ uschar *keep_environment = NULL; int keep_malformed = 4*24*60*60; /* 4 days */ uschar *eldap_dn = NULL; +#ifdef EXPERIMENTAL_ESMTP_LIMITS +uschar *limits_advertise_hosts = US"*"; +#endif int load_average = -2; uschar *local_from_prefix = NULL; uschar *local_from_suffix = NULL; @@ -1028,6 +1048,7 @@ int log_default[] = { /* for initializing log_selector */ Li_outgoing_interface, /* see d_log_interface in deliver.c */ Li_msg_id, Li_queue_run, + Li_queue_time_exclusive, Li_rejected_header, Li_retry_defer, Li_sender_verify_fail, @@ -1082,6 +1103,7 @@ bit_table log_options[] = { /* must be in alphabetical order, #endif BIT_TABLE(L, queue_run), BIT_TABLE(L, queue_time), + BIT_TABLE(L, queue_time_exclusive), BIT_TABLE(L, queue_time_overall), BIT_TABLE(L, receive_time), BIT_TABLE(L, received_recipients), @@ -1202,6 +1224,7 @@ uschar *proxy_external_address = NULL; int proxy_external_port = 0; uschar *proxy_local_address = NULL; int proxy_local_port = 0; +int proxy_protocol_timeout = 3; #endif uschar *prvscheck_address = NULL; @@ -1267,14 +1290,14 @@ uschar *received_header_text = US int received_headers_max = 30; uschar *received_protocol = NULL; struct timeval received_time = { 0, 0 }; -struct timeval received_time_taken = { 0, 0 }; +struct timeval received_time_complete = { 0, 0 }; uschar *recipient_data = NULL; uschar *recipient_unqualified_hosts = NULL; uschar *recipient_verify_failure = NULL; int recipients_count = 0; recipient_item *recipients_list = NULL; int recipients_list_max = 0; -int recipients_max = 0; +int recipients_max = 50000; const pcre *regex_AUTH = NULL; const pcre *regex_check_dns_names = NULL; const pcre *regex_From = NULL; @@ -1443,12 +1466,13 @@ int smtp_accept_count = 0; int smtp_accept_max = 20; int smtp_accept_max_nonmail= 10; uschar *smtp_accept_max_nonmail_hosts = US"*"; -int smtp_accept_max_per_connection = 1000; +uschar *smtp_accept_max_per_connection = US"1000"; uschar *smtp_accept_max_per_host = NULL; int smtp_accept_queue = 0; int smtp_accept_queue_per_connection = 10; int smtp_accept_reserve = 0; uschar *smtp_active_hostname = NULL; +int smtp_backlog_monitor = 0; uschar *smtp_banner = US"$smtp_active_hostname ESMTP " "Exim $version_number $tod_full" "\0<---------------Space to patch smtp_banner->"; @@ -1461,8 +1485,10 @@ int smtp_connect_backlog = 20; double smtp_delay_mail = 0.0; double smtp_delay_rcpt = 0.0; FILE *smtp_in = NULL; +int smtp_listen_backlog = 0; int smtp_load_reserve = -1; int smtp_mailcmd_count = 0; +int smtp_mailcmd_max = -1; FILE *smtp_out = NULL; uschar *smtp_etrn_command = NULL; int smtp_max_synprot_errors= 3; @@ -1560,60 +1586,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;