X-Git-Url: https://git.exim.org/exim.git/blobdiff_plain/ddd83c1e419a8939d6655fc061de16b271446162..e2fe20104068e079266859fbe7a95fdab5d3fee2:/doc/doc-docbook/spec.xfpt diff --git a/doc/doc-docbook/spec.xfpt b/doc/doc-docbook/spec.xfpt index 7ef79f0ac..85c6d3b3b 100644 --- a/doc/doc-docbook/spec.xfpt +++ b/doc/doc-docbook/spec.xfpt @@ -4020,7 +4020,7 @@ user. This option requests Exim to give up trying to deliver the listed messages, including any that are frozen. However, if any of the messages are active, their status is not altered. For non-bounce messages, a delivery error message -is sent to the sender, containing the text &"cancelled by administrator"&. +is sent to the sender. Bounce messages are just discarded. This option can be used only by an admin user. @@ -7349,6 +7349,11 @@ dot-separated components; a key such as &`*fict.example`& in a database file is useless, because the asterisk in a partial matching subject key is always followed by a dot. +When the lookup is done from a string-expansion, +the variables &$1$& and &$2$& contain the wild and non-wild parts of the key +during the expansion of the replacement text. +They return to their previous values at the end of the lookup item. + @@ -12083,6 +12088,10 @@ Exim was built with the EXPAND_LISTMATCH_RHS option. Consult section &<>& for further details of these patterns. +The variable &$value$& will be set for a successful match and can be +used in the success clause of an &%if%& expansion item using the condition. +Any previous &$value$& is restored after the if. + .vitem &*match_local_part&~{*&<&'string1'&>&*}{*&<&'string2'&>&*}*& .cindex "domain list" "in expansion condition" .cindex "address list" "in expansion condition" @@ -19176,12 +19185,25 @@ This applies to all of the SRV, MX, AAAA, A lookup sequence. .cindex "router" "restricting to specific domains" .vindex "&$domain_data$&" If this option is set, the router is skipped unless the current domain matches -the list. If the match is achieved by means of a file lookup, the data that the -lookup returned for the domain is placed in &$domain_data$& for use in string +the list. +The data returned by the list check +is placed in &$domain_data$& for use in string expansions of the driver's private options and in the transport. See section &<>& for a list of the order in which preconditions are evaluated. +A complex example, using a file like: +.code +alice@dom1 +bill@dom1 +maggie@dom1 +.endd +and checking both domain and local_part +.code +domains = ${domain:${lookup {$local_part@$domain} lseach,ret=key {/path/to/accountsfile}}} +local_parts = ${local_part:${lookup {$local_part@$domain} lseach,ret=key {/path/to/accountsfile}}} +.endd + .option driver routers string unset @@ -19545,7 +19567,7 @@ example: local_parts = dbm;/usr/local/specials/$domain_data .endd .vindex "&$local_part_data$&" -If the match is achieved by a lookup, the data that the lookup returned +the data returned by the list check for the local part is placed in the variable &$local_part_data$& for use in expansions of the router's private options or in the transport. You might use this option, for @@ -29675,10 +29697,10 @@ A HUP signal is sufficient for this. The value &"system"& results in no caching under GnuTLS. The macro _HAVE_TLS_CA_CACHE will be defined if the suffix for "system" -is acceptable in configurations for the Exim executavble. +is acceptable in configurations for the Exim executable. Caching of the system Certificate Authorities bundle can -save siginificant time and processing on every TLS connection +save significant time and processing on every TLS connection accepted by Exim. @@ -29848,10 +29870,10 @@ A HUP signal is sufficient for this. The value &"system"& results in no caching under GnuTLS. The macro _HAVE_TLS_CA_CACHE will be defined if the suffix for "system" -is acceptable in configurations for the Exim executavble. +is acceptable in configurations for the Exim executable. Caching of the system Certificate Authorities bundle can -save siginificant time and processing on every TLS connection +save significant time and processing on every TLS connection initiated by Exim.