summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeremy Harris <jgh146exb@wizmail.org>2014-11-21 15:15:15 +0000
committerJeremy Harris <jgh146exb@wizmail.org>2014-11-21 15:41:19 +0000
commit27df4b34b1135b0cf29b08e4d90676689b09d1ae (patch)
tree6a78c9155d56eec7ba2f351d29ed526fbc157352
parentcdcb9659adffb89d14648bf528fdbf8d54708582 (diff)
As client, request PRDR by default if the server offers it
-rw-r--r--doc/doc-docbook/spec.xfpt14
-rw-r--r--doc/doc-txt/ChangeLog3
-rw-r--r--src/src/globals.c2
-rw-r--r--src/src/transports/smtp.c2
4 files changed, 14 insertions, 7 deletions
diff --git a/doc/doc-docbook/spec.xfpt b/doc/doc-docbook/spec.xfpt
index 15eb56161..e86fea800 100644
--- a/doc/doc-docbook/spec.xfpt
+++ b/doc/doc-docbook/spec.xfpt
@@ -13562,8 +13562,9 @@ This option defines the ACL that is run after an SMTP DATA command has been
processed and the message itself has been received, but before the final
acknowledgment is sent. See chapter &<<CHAPACL>>& for further details.
-.option acl_smtp_data_prdr main string&!! unset
-.cindex "DATA" "ACL for"
+.option acl_smtp_data_prdr main string&!! accept
+.cindex "PRDR" "ACL for"
+.cindex "DATA" "PRDR ACL for"
.cindex "&ACL;" "PRDR-related"
.cindex "&ACL;" "per-user data processing"
This option defines the ACL that,
@@ -23175,11 +23176,12 @@ connects. If authentication fails, Exim will try to transfer the message
unauthenticated. See also &%hosts_require_auth%&, and chapter
&<<CHAPSMTPAUTH>>& for details of authentication.
-.option hosts_try_prdr smtp "host list&!!" unset
+.option hosts_try_prdr smtp "host list&!!" *
.cindex "PRDR" "enabling, optional in client"
This option provides a list of servers to which, provided they announce
PRDR support, Exim will attempt to negotiate PRDR
for multi-recipient messages.
+The option can usually be left as default.
.option interface smtp "string list&!!" unset
.cindex "bind IP address"
@@ -26926,6 +26928,7 @@ This ACL is evaluated after &%acl_smtp_dkim%& but before &%acl_smtp_data%&.
.section "The SMTP PRDR ACL" "SECTPRDRACL"
+.cindex "PRDR" "ACL for"
.oindex "&%prdr_enable%&"
The &%acl_smtp_data_prdr%& ACL is available only when Exim is compiled
with PRDR support enabled (which is the default).
@@ -26934,8 +26937,9 @@ client and server for a message, and more than one recipient
has been accepted.
The ACL test specfied by &%acl_smtp_data_prdr%& happens after a message
-has been recieved, and is executed for each recipient of the message.
-The test may accept or deny for inividual recipients.
+has been recieved, and is executed once for each recipient of the message
+with &$local_part$& and &$domain$& valid.
+The test may accept, defer or deny for inividual recipients.
The &%acl_smtp_data%& will still be called after this ACL and
can reject the message overall, even if this ACL has accepted it
for some or all recipients.
diff --git a/doc/doc-txt/ChangeLog b/doc/doc-txt/ChangeLog
index bc79829de..3963567e2 100644
--- a/doc/doc-txt/ChangeLog
+++ b/doc/doc-txt/ChangeLog
@@ -9,6 +9,9 @@ JH/01 Bug 1545: The smtp transport option "retry_include_ip_address" is now
JH/02 The smtp transport option "multi_domain" is now expanded.
+JH/03 The smtp transport now requests PRDR by default, if the server offers
+ it.
+
Exim version 4.85
-----------------
diff --git a/src/src/globals.c b/src/src/globals.c
index f7c67d76f..a7beec602 100644
--- a/src/src/globals.c
+++ b/src/src/globals.c
@@ -234,7 +234,7 @@ uschar *acl_smtp_auth = NULL;
uschar *acl_smtp_connect = NULL;
uschar *acl_smtp_data = NULL;
#ifndef DISABLE_PRDR
-uschar *acl_smtp_data_prdr = NULL;
+uschar *acl_smtp_data_prdr = US"accept";
#endif
#ifndef DISABLE_DKIM
uschar *acl_smtp_dkim = NULL;
diff --git a/src/src/transports/smtp.c b/src/src/transports/smtp.c
index d29ab8b43..9ba033e24 100644
--- a/src/src/transports/smtp.c
+++ b/src/src/transports/smtp.c
@@ -214,7 +214,7 @@ smtp_transport_options_block smtp_transport_option_defaults = {
NULL, /* hosts_require_dane */
#endif
#ifndef DISABLE_PRDR
- NULL, /* hosts_try_prdr */
+ US"*", /* hosts_try_prdr */
#endif
#ifndef DISABLE_OCSP
US"*", /* hosts_request_ocsp (except under DANE; tls_client_start()) */