More 4.63 documentation (noticed an important bit missing at the very exim-4_63
authorPhilip Hazel <ph10@hermes.cam.ac.uk>
Mon, 31 Jul 2006 14:19:31 +0000 (14:19 +0000)
committerPhilip Hazel <ph10@hermes.cam.ac.uk>
Mon, 31 Jul 2006 14:19:31 +0000 (14:19 +0000)
last minute).

doc/doc-docbook/spec.xfpt
doc/doc-txt/NewStuff
doc/doc-txt/OptionLists.txt

index f437412dce0de8d37269369d09fda24700f5fb92..04c00d9f55f6ddb07e93e98fff1f201df078a050 100644 (file)
@@ -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%&,
index 6c4df3e3ba38c8ce1601707c0acf9018bc7cafee..7f00ee5cd027224c7f2c4bee679f307432c1c3b0 100644 (file)
@@ -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
index 07d05c99db05a499e1901527aa01de896817d601..518cce2c14948a78d31de9e798745226c019ab71 100644 (file)
@@ -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