X-Git-Url: https://git.exim.org/exim.git/blobdiff_plain/a85c067ba6c6940512cf57ec213277a370d87e70..107077d7fd6736711bf5cd980221723401d37c51:/src/src/globals.h diff --git a/src/src/globals.h b/src/src/globals.h index 48d93a1c3..6ec4e619d 100644 --- a/src/src/globals.h +++ b/src/src/globals.h @@ -2,10 +2,10 @@ * Exim - an Internet mail transport agent * *************************************************/ -/* Copyright (c) The Exim Maintainers 2020 - 2022 */ +/* Copyright (c) The Exim Maintainers 2020 - 2023 */ /* Copyright (c) University of Cambridge 1995 - 2018 */ /* See the file NOTICE for conditions of use and distribution. */ -/* SPDX-License-Identifier: GPL-2.0-only */ +/* SPDX-License-Identifier: GPL-2.0-or-later */ /* Almost all the global variables are defined together in this one header, so that they are easy to find. However, those that are visible during the @@ -246,6 +246,7 @@ extern struct global_flags { BOOL no_mbox_unspool :1; /* don't unlink files in /scan directory */ #endif BOOL no_multiline_responses :1; /* For broken clients */ + BOOL notifier_socket_en :1; /* Permit create of notifier socket */ BOOL parse_allow_group :1; /* Allow group syntax */ BOOL parse_found_group :1; /* In the middle of a group */ @@ -256,8 +257,6 @@ extern struct global_flags { BOOL queue_2stage :1; /* Run queue in 2-stage manner */ BOOL queue_only_policy :1; /* ACL or local_scan wants queue_only */ - BOOL queue_run_first_delivery :1; /* If TRUE, first deliveries only */ - BOOL queue_run_force :1; /* TRUE to force during queue run */ BOOL queue_run_local :1; /* Local deliveries only in queue run */ BOOL queue_running :1; /* TRUE for queue running process and */ BOOL queue_smtp :1; /* Disable all immediate SMTP (-odqs)*/ @@ -433,6 +432,7 @@ extern gstring *client_cmd_log; /* debug log of client cmds & responses * extern int clmacro_count; /* Number of command line macros */ extern uschar *clmacros[]; /* Copy of them, for re-exec */ extern BOOL commandline_checks_require_admin; /* belt and braces for insecure setups */ +extern uint64_t connection_id; /* connection number */ extern int connection_max_messages;/* Max down one SMTP connection */ extern FILE *config_file; /* Configuration file */ extern const uschar *config_filename; /* Configuration file name */ @@ -662,12 +662,16 @@ extern uschar *host_lookup_order; /* Order of host lookup types */ extern uschar *host_lookup_msg; /* Text for why it failed */ extern int host_number; /* For sharing spools */ extern uschar *host_number_string; /* For expanding */ -extern uschar *hosts_require_helo; /* check for HELO/EHLO before MAIL */ extern uschar *host_reject_connection; /* Reject these hosts */ -extern tree_node *hostlist_anchor; /* Tree of defined host lists */ -extern int hostlist_count; /* Number defined */ extern uschar *hosts_connection_nolog; /* Limits the logging option */ +extern uschar *hosts_require_helo; /* check for HELO/EHLO before MAIL */ extern uschar *hosts_treat_as_local; /* For routing */ +#ifdef EXPERIMENTAL_XCLIENT +extern uschar *hosts_xclient; /* Allow XCLIENT command for specified hosts */ +#endif +extern tree_node *hostlist_anchor; /* Tree of defined host lists */ +extern int hostlist_count; /* Number defined */ + extern int ignore_bounce_errors_after; /* Keep them for this time. */ extern BOOL ignore_fromline_local; /* Local SMTP ignore fromline */ @@ -822,20 +826,23 @@ 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) +#if defined(SUPPORT_PROXY) || defined(SUPPORT_SOCKS) || defined(EXPERIMENTAL_XCLIENT) extern uschar *hosts_proxy; /* Hostlist which (require) use proxy protocol */ extern uschar *proxy_external_address; /* IP of remote interface of proxy */ extern int proxy_external_port; /* Port on remote interface of proxy */ extern uschar *proxy_local_address; /* IP of local interface of proxy */ extern int proxy_local_port; /* Port on local interface of proxy */ extern int proxy_protocol_timeout; /* Timeout for proxy negotiation */ -extern BOOL proxy_session; /* TRUE if receiving mail from valid proxy */ +extern BOOL proxy_session; /* TRUE if receiving mail from valid proxy + or sending via one */ #endif extern uschar *prvscheck_address; /* Set during prvscheck expansion item */ extern uschar *prvscheck_keynum; /* Set during prvscheck expansion item */ extern uschar *prvscheck_result; /* Set during prvscheck expansion item */ +extern qrunner *qrunners; /* tracking data for queues */ + 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 */ @@ -1113,8 +1120,8 @@ extern uschar *uucp_from_pattern; /* For recognizing "From " lines */ extern uschar *uucp_from_sender; /* For building the sender */ extern uschar *warn_message_file; /* Template for warning messages */ -extern uschar *warnmsg_delay; /* String form of delay time */ -extern uschar *warnmsg_recipients; /* Recipients of warning message */ +extern const uschar *warnmsg_delay; /* String form of delay time */ +extern const uschar *warnmsg_recipients; /* Recipients of warning message */ extern BOOL write_rejectlog; /* Control of reject logging */ extern uschar *verify_mode; /* Running a router in verify mode */