From 5abeaa6ed041be7701397e36ceed5379ac356998 Mon Sep 17 00:00:00 2001 From: Philip Hazel Date: Mon, 31 Jul 2006 14:19:31 +0000 Subject: [PATCH] More 4.63 documentation (noticed an important bit missing at the very last minute). --- doc/doc-docbook/spec.xfpt | 41 ++++++++++++++++++++++++++++++++----- doc/doc-txt/NewStuff | 4 ++-- doc/doc-txt/OptionLists.txt | 3 ++- 3 files changed, 40 insertions(+), 8 deletions(-) diff --git a/doc/doc-docbook/spec.xfpt b/doc/doc-docbook/spec.xfpt index f437412dc..04c00d9f5 100644 --- a/doc/doc-docbook/spec.xfpt +++ b/doc/doc-docbook/spec.xfpt @@ -1,4 +1,4 @@ -. $Cambridge: exim/doc/doc-docbook/spec.xfpt,v 1.11 2006/07/31 13:19:36 ph10 Exp $ +. $Cambridge: exim/doc/doc-docbook/spec.xfpt,v 1.12 2006/07/31 14:19:31 ph10 Exp $ . . ///////////////////////////////////////////////////////////////////////////// . This is the primary source of the Exim Manual. It is an xfpt document that is @@ -17250,20 +17250,32 @@ text associated with the failure. For example, an alias file might contain: .code X.Employee: :fail: Gone away, no forwarding address .endd +.new In the case of an address that is being verified from an ACL or as the subject of a .cindex "VRFY error text" "display of" VRFY command, the text is included in the SMTP error response by default. .cindex "EXPN error text" "display of" -The text is not included in the response to an EXPN command. +The text is not included in the response to an EXPN command. In non-SMTP cases +the text is included in the error message that Exim generates. + +.cindex "SMTP" "error codes" +By default, Exim sends a 451 SMTP code for a &':defer:'&, and 550 for +&':fail:'&. However, if the message starts with three digits followed by a +space, optionally followed by an extended code of the form &'n.n.n'&, also +followed by a space, and the very first digit is the same as the default error +code, the code from the message is used instead. If the very first digit is +incorrect, a panic error is logged, and the default code is used. You can +suppress the use of the supplied code in a redirect router by setting the +&%forbid_smtp_code%& option true. In this case, any SMTP code is quietly +ignored. .cindex "&$acl_verify_message$&" In an ACL, an explicitly provided message overrides the default, but the default message is available in the variable &$acl_verify_message$& and can -therefore be included in a custom message if this is desired. Exim sends a 451 -SMTP code for a &':defer:'&, and 550 for &':fail:'&. In non-SMTP cases the text -is included in the error message that Exim generates. +therefore be included in a custom message if this is desired. +.wen Normally the error text is the rest of the redirection list &-- a comma does not terminate it &-- but a newline does act as a terminator. Newlines are not @@ -17587,6 +17599,15 @@ If this option is set true, only Exim filters are permitted when &%allow_filter%& is true. +.new +.cindex "SMTP" "error codes" +.option forbid_smtp_code redirect boolean false +If this option is set true, any SMTP error codes that are present at the start +of messages specified for &`:defer:`& or &`:fail:`& are quietly ignored, and +the default codes (451 and 550, respectively) are always used. +.wen + + .option hide_child_in_errmsg redirect boolean false @@ -24542,6 +24563,16 @@ it processes &%message%&. If the expansion fails, or generates an empty string, the modifier is ignored. For ACLs that are triggered by SMTP commands, the message is returned as part of the SMTP error response. +.new +.cindex "SMTP" "error codes" +By default, Exim uses a 550 SMTP code when it denies access. However, if the +message starts with three digits followed by a space, optionally followed by an +extended code of the form &'n.n.n'&, also followed by a space, and the very +first digit is the same as the default error code, the code from the message is +used instead. If the very first digit is incorrect, a panic error is logged, +and the default code is used. +.wen + The text is literal; any quotes are taken as literals, but because the string is expanded, backslash escapes are processed anyway. If the message contains newlines, this gives rise to a multi-line SMTP response. Like &%log_message%&, diff --git a/doc/doc-txt/NewStuff b/doc/doc-txt/NewStuff index 6c4df3e3b..7f00ee5cd 100644 --- a/doc/doc-txt/NewStuff +++ b/doc/doc-txt/NewStuff @@ -1,4 +1,4 @@ -$Cambridge: exim/doc/doc-txt/NewStuff,v 1.107 2006/07/21 16:48:42 jetmore Exp $ +$Cambridge: exim/doc/doc-txt/NewStuff,v 1.108 2006/07/31 14:19:31 ph10 Exp $ New Features in Exim -------------------- @@ -41,7 +41,7 @@ Version 4.63 and the default code is used. This is an incompatible change, but it is not expected to affect many (if any) configurations. It is possible to suppress the use of the supplied code in a redirect router by setting the - smtp_error_code option false. In this case, any SMTP code is quietly + forbid_smtp_code option true. In this case, any SMTP code is quietly ignored. 4. There is a new parameter for LDAP lookups called "referrals", which takes diff --git a/doc/doc-txt/OptionLists.txt b/doc/doc-txt/OptionLists.txt index 07d05c99d..518cce2c1 100644 --- a/doc/doc-txt/OptionLists.txt +++ b/doc/doc-txt/OptionLists.txt @@ -1,4 +1,4 @@ -$Cambridge: exim/doc/doc-txt/OptionLists.txt,v 1.21 2006/06/27 14:34:26 ph10 Exp $ +$Cambridge: exim/doc/doc-txt/OptionLists.txt,v 1.22 2006/07/31 14:19:31 ph10 Exp $ LISTS OF EXIM OPTIONS --------------------- @@ -222,6 +222,7 @@ forbid_filter_run boolean false redirect forbid_include boolean false redirect 4.00 forbid_pipe boolean false redirect 4.00 forbid_sieve_filter boolean false redirect 4.44 +forbid_smtp_code boolean false redirect 4.63 freeze_exec_fail boolean false pipe 1.89 freeze_tell boolean false main 4.00 replaces freeze_tell_mailmaster from string* unset autoreply -- 2.30.2