X-Git-Url: https://git.exim.org/exim.git/blobdiff_plain/1c519e07b908a314ce7bdfceb6baa9e18e302dfc..b50e778f1011c618e6f7fd73ac544a5903a29e1a:/src/src/globals.h diff --git a/src/src/globals.h b/src/src/globals.h index bb66cb239..b46e20be4 100644 --- a/src/src/globals.h +++ b/src/src/globals.h @@ -68,6 +68,7 @@ extern uschar *redis_servers; /* List of servers and connect info */ #endif #ifdef LOOKUP_SQLITE +extern uschar *sqlite_dbfile; /* Filname for database */ extern int sqlite_lock_timeout; /* Internal lock waiting timeout */ #endif @@ -274,6 +275,8 @@ extern struct global_flags { BOOL synchronous_delivery :1; /* TRUE if -odi is set */ BOOL system_filtering :1; /* TRUE when running system filter */ + BOOL taint_check_slow :1; /* malloc/mmap are not returning distinct ranges */ + BOOL testsuite_delays :1; /* interprocess sequencing delays, under testsuite */ BOOL tcp_fastopen_ok :1; /* appears to be supported by kernel */ BOOL tcp_in_fastopen :1; /* conn usefully used fastopen */ BOOL tcp_in_fastopen_data :1; /* fastopen carried data */ @@ -341,7 +344,7 @@ extern gid_t *admin_groups; /* List of admin groups */ extern BOOL allow_domain_literals; /* As it says */ extern BOOL allow_mx_to_ip; /* Allow MX records to -> ip address */ #ifdef EXPERIMENTAL_ARC -struct arc_set *arc_received; /* highest ARC instance evaluation struct */ +extern struct arc_set *arc_received; /* highest ARC instance evaluation struct */ extern int arc_received_instance; /* highest ARC instance number in headers */ extern int arc_oldest_pass; /* lowest passing instance number in headers */ extern const uschar *arc_state; /* verification state */ @@ -445,6 +448,7 @@ typedef struct { } cut_t; extern cut_t cutthrough; /* Deliver-concurrently */ +extern int daemon_notifier_fd; /* Unix socket for notifications */ extern uschar *daemon_smtp_port; /* Can be a list of ports */ extern int daemon_startup_retries; /* Number of times to retry */ extern int daemon_startup_sleep; /* Sleep between retries */ @@ -487,7 +491,10 @@ extern uschar *deliver_localpart_data; /* From local part lookup */ extern uschar *deliver_localpart_orig; /* The original local part for delivery */ extern uschar *deliver_localpart_parent; /* The parent local part for delivery */ extern uschar *deliver_localpart_prefix; /* The stripped prefix, if any */ +extern uschar *deliver_localpart_prefix_v; /* The stripped-prefix variable portion, if any */ extern uschar *deliver_localpart_suffix; /* The stripped suffix, if any */ +extern uschar *deliver_localpart_suffix_v; /* The stripped-suffix variable portion, if any */ +extern uschar *deliver_localpart_verified; /* de-tainted by check_local_part */ extern uschar *deliver_out_buffer; /* Buffer for copying file */ extern int deliver_queue_load_max; /* Different value for queue running */ extern address_item *deliver_recipients; /* Current set of addresses */ @@ -729,8 +736,7 @@ extern int mime_part_count; extern BOOL mua_wrapper; /* TRUE when Exim is wrapping an MUA */ extern uid_t *never_users; /* List of uids never to be used */ -#ifdef WITH_CONTENT_SCAN -#endif +extern uschar *notifier_socket; /* Name for daemon notifier unix-socket */ extern const int on; /* For setsockopt */ extern const int off; @@ -766,6 +772,7 @@ extern BOOL print_topbitchars; /* Topbit chars are printing chars */ extern uschar *process_info; /* For SIGUSR1 output */ extern int process_info_len; extern uschar *process_log_path; /* Alternate path */ +extern const uschar *process_purpose; /* for debug output */ extern BOOL prod_requires_admin; /* TRUE if prodding requires admin */ #if defined(SUPPORT_PROXY) || defined(SUPPORT_SOCKS) @@ -784,6 +791,9 @@ extern uschar *prvscheck_result; /* Set during prvscheck expansion item */ extern const uschar *qualify_domain_recipient; /* Domain to qualify recipients with */ extern uschar *qualify_domain_sender; /* Domain to qualify senders with */ extern uschar *queue_domains; /* Queue these domains */ +#ifdef EXPERIMENTAL_QUEUE_RAMP +extern BOOL queue_fast_ramp; /* 2-phase queue-run overlap */ +#endif extern BOOL queue_list_requires_admin; /* TRUE if -bp requires admin */ /* immediate children */ extern pid_t queue_run_pid; /* PID of the queue running process or 0 */ @@ -798,6 +808,8 @@ extern uschar *queue_only_file; /* Queue if file exists/not-exists */ extern BOOL queue_only_override; /* Allow override from command line */ extern BOOL queue_run_in_order; /* As opposed to random */ extern uschar *queue_run_max; /* Max queue runners */ +extern unsigned queue_size; /* items in queue */ +extern time_t queue_size_next; /* next time to evaluate queue_size */ extern uschar *queue_smtp_domains; /* Ditto, for these domains */ extern unsigned int random_seed; /* Seed for random numbers */