X-Git-Url: https://vcs.fsf.org/?p=exim.git;a=blobdiff_plain;f=src%2Fsrc%2Fglobals.c;h=d00df97319d4c518cfe7d31ac124c424129c851f;hp=edd1edbbc9eb40fe78a6b19403bd48136c75d78c;hb=1e1ddfac79fbcd052f199500a6493c7f79cb8462;hpb=163144aab02a47427340d0ecc75e2abde675f4c9 diff --git a/src/src/globals.c b/src/src/globals.c index edd1edbbc..d00df9731 100644 --- a/src/src/globals.c +++ b/src/src/globals.c @@ -3,6 +3,7 @@ *************************************************/ /* Copyright (c) University of Cambridge 1995 - 2018 */ +/* Copyright (c) The Exim Maintainers 2020 */ /* See the file NOTICE for conditions of use and distribution. */ /* All the global variables are defined together in this one module, so @@ -16,23 +17,23 @@ data blocks and hence have the opt_public flag set. */ optionlist optionlist_auths[] = { { "client_condition", opt_stringptr | opt_public, - (void *)(offsetof(auth_instance, client_condition)) }, + OPT_OFF(auth_instance, client_condition) }, { "client_set_id", opt_stringptr | opt_public, - (void *)(offsetof(auth_instance, set_client_id)) }, + OPT_OFF(auth_instance, set_client_id) }, { "driver", opt_stringptr | opt_public, - (void *)(offsetof(auth_instance, driver_name)) }, + OPT_OFF(auth_instance, driver_name) }, { "public_name", opt_stringptr | opt_public, - (void *)(offsetof(auth_instance, public_name)) }, + OPT_OFF(auth_instance, public_name) }, { "server_advertise_condition", opt_stringptr | opt_public, - (void *)(offsetof(auth_instance, advertise_condition))}, + OPT_OFF(auth_instance, advertise_condition)}, { "server_condition", opt_stringptr | opt_public, - (void *)(offsetof(auth_instance, server_condition)) }, + OPT_OFF(auth_instance, server_condition) }, { "server_debug_print", opt_stringptr | opt_public, - (void *)(offsetof(auth_instance, server_debug_string)) }, + OPT_OFF(auth_instance, server_debug_string) }, { "server_mail_auth_condition", opt_stringptr | opt_public, - (void *)(offsetof(auth_instance, mail_auth_condition)) }, + OPT_OFF(auth_instance, mail_auth_condition) }, { "server_set_id", opt_stringptr | opt_public, - (void *)(offsetof(auth_instance, set_id)) } + OPT_OFF(auth_instance, set_id) } }; int optionlist_auths_size = nelem(optionlist_auths); @@ -89,6 +90,7 @@ uschar *redis_servers = NULL; #endif #ifdef LOOKUP_SQLITE +uschar *sqlite_dbfile = NULL; int sqlite_lock_timeout = 5; #endif @@ -312,6 +314,8 @@ struct global_flags f = .synchronous_delivery = FALSE, .system_filtering = FALSE, + .taint_check_slow = FALSE, + .testsuite_delays = TRUE, .tcp_fastopen_ok = FALSE, .tcp_in_fastopen = FALSE, .tcp_in_fastopen_data = FALSE, @@ -378,6 +382,9 @@ BOOL prod_requires_admin = TRUE; BOOL proxy_session = FALSE; #endif +#ifdef EXPERIMENTAL_QUEUE_RAMP +BOOL queue_fast_ramp = FALSE; +#endif BOOL queue_list_requires_admin = TRUE; BOOL queue_only = FALSE; BOOL queue_only_load_latch = TRUE; @@ -536,7 +543,9 @@ address_item address_defaults = { .lc_local_part = NULL, .local_part = NULL, .prefix = NULL, + .prefix_v = NULL, .suffix = NULL, + .suffix_v = NULL, .domain = NULL, .address_retry_key = NULL, .domain_retry_key = NULL, @@ -735,6 +744,7 @@ cut_t cutthrough = { .nrcpt = 0, /* number of addresses */ }; +int daemon_notifier_fd = -1; uschar *daemon_smtp_port = US"smtp"; int daemon_startup_retries = 9; int daemon_startup_sleep = 30; @@ -816,7 +826,9 @@ uschar *deliver_localpart_data = NULL; uschar *deliver_localpart_orig = NULL; uschar *deliver_localpart_parent = NULL; uschar *deliver_localpart_prefix = NULL; +uschar *deliver_localpart_prefix_v = NULL; uschar *deliver_localpart_suffix = NULL; +uschar *deliver_localpart_suffix_v = NULL; uschar *deliver_localpart_verified = NULL; uschar *deliver_out_buffer = NULL; int deliver_queue_load_max = -1; @@ -834,6 +846,7 @@ uschar *dkim_signing_domain = NULL; uschar *dkim_signing_selector = NULL; uschar *dkim_verify_hashes = US"sha256:sha512"; uschar *dkim_verify_keytypes = US"ed25519:rsa"; +uschar *dkim_verify_min_keysizes = US"rsa=1024 ed25519=250"; BOOL dkim_verify_minimal = FALSE; uschar *dkim_verify_overall = NULL; uschar *dkim_verify_signers = US"$dkim_signers"; @@ -1154,6 +1167,7 @@ int mime_part_count = -1; #endif uid_t *never_users = NULL; +uschar *notifier_socket = US"$spool_directory/" NOTIFIER_SOCKET_NAME ; const int on = 1; /* for setsockopt */ const int off = 0; @@ -1177,6 +1191,7 @@ uschar *primary_hostname = NULL; uschar *process_info; 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; @@ -1202,6 +1217,8 @@ int queue_only_load = -1; uschar *queue_run_max = US"5"; pid_t queue_run_pid = (pid_t)0; int queue_run_pipe = -1; +unsigned queue_size = 0; +time_t queue_size_next = 0; uschar *queue_smtp_domains = NULL; uint32_t random_seed = 0;