]> git.ipfire.org Git - thirdparty/postfix.git/commitdiff
postfix-2.8-20100707
authorWietse Venema <wietse@porcupine.org>
Wed, 7 Jul 2010 05:00:00 +0000 (00:00 -0500)
committerViktor Dukhovni <viktor@dukhovni.org>
Tue, 5 Feb 2013 06:36:21 +0000 (06:36 +0000)
20 files changed:
postfix/HISTORY
postfix/README_FILES/LDAP_README
postfix/README_FILES/QSHAPE_README
postfix/RELEASE_NOTES
postfix/WISHLIST
postfix/conf/postfix-files
postfix/html/LDAP_README.html
postfix/html/QSHAPE_README.html
postfix/html/SQLITE_README.html
postfix/html/postconf.5.html
postfix/html/sqlite_table.5.html
postfix/man/man5/postconf.5
postfix/mantools/postlink
postfix/proto/LDAP_README.html
postfix/proto/QSHAPE_README.html
postfix/proto/postconf.proto
postfix/src/global/mail_version.h
postfix/src/oqmgr/qmgr_message.c
postfix/src/qmgr/qmgr_message.c
postfix/src/tls/tls_misc.c

index 747e4440ac22d6e29913e24b63e287552dbbf59d..ae9005eb4015d4985a9114843dda437ac4ef622f 100644 (file)
@@ -15823,11 +15823,12 @@ Apologies for any names omitted.
 
 20100610
 
-       Bugfix: Postfix no longer appends the system default CAs
-       to the lists specified with *_tls_CAfile or with *_tls_CApath.
-       This prevents third-party certificates from being trusted
-       and given mail relay permission with permit_tls_all_clientcerts.
-       This change may break valid configurations that do not use
+       Bugfix (introduced Postfix 2.2): Postfix no longer appends
+       the system default CA certificates to the lists specified
+       with *_tls_CAfile or with *_tls_CApath.  This prevents
+       third-party certificates from being trusted and given mail
+       relay permission with permit_tls_all_clientcerts.  This
+       change may break valid configurations that do not use
        permit_tls_all_clientcerts.  To get the old behavior, specify
        "tls_append_default_CA = yes".  Files: tls/tls_certkey.c,
        tls/tls_misc.c, global/mail_params.h.  proto/postconf.proto,
@@ -15855,3 +15856,7 @@ Apologies for any names omitted.
 
        Cleanup: SQLite read-only driver and documentation.  Files:
        global/dict_sqlite.c, proto/mysql_table, proto/SQLITE_README.html.
+
+20100707
+
+       Completed the 20100610 bugfix. File: tls/tls_misc.c.
index 043b311a20e41c9a5c27e0e67c77cb18d3899bbc..12ae27530f57fc356f17bb9e6894282f2cc678a7 100644 (file)
@@ -232,8 +232,8 @@ settings, timeouts, ...) we have:
             search_base = dc=example, dc=com
             query_filter = mail=%s
             result_attribute = memberaddr
-        $ postmap -q agroup@example.com ldap:simple.cf
-        auser@example.org,buser@example.org
+        $ postmap -q agroup@example.com ldap:/etc/postfix/simple.cf \
+            auser@example.org,buser@example.org
 
 We search "dc=example, dc=com". The "mail" attribute is used in the
 query_filter to locate the right group, the "result_attribute" setting
@@ -261,8 +261,8 @@ example data.
             query_filter = mail=%s
             result_attribute = maildrop
             special_result_attribute = memberdn
-        $ postmap -q agroup@example.com ldap:special.cf
-        auser@mailhub.example.com,buser@mailhub.example.com
+        $ postmap -q agroup@example.com ldap:/etc/postfix/special.cf \
+            auser@mailhub.example.com,buser@mailhub.example.com
 
 Note: if the desired member object result attribute is always also present in
 the group, you get surprising results: the expansion also returns the address
@@ -288,12 +288,15 @@ expanded.
             query_filter = mail=%s
             result_attribute = maildrop
             special_result_attribute = memberdn
-        $ postmap -q auser@example.com ldap:no_expand.cf ldap:expand.cf
-        auser@mailhub.example.com
-        $ postmap -q agroup@example.com ldap:no_expand.cf ldap:expand.cf
-        auser@mailhub.example.com,buser@mailhub.example.com
-        $ postmap -q bgroup@example.com ldap:no_expand.cf ldap:expand.cf
-        bgroup@mlm.example.com
+        $ postmap -q auser@example.com \
+            ldap:/etc/postfix/no_expand.cf ldap:/etc/postfix/expand.cf \
+            auser@mailhub.example.com
+        $ postmap -q agroup@example.com \
+            ldap:/etc/postfix/no_expand.cf ldap:/etc/postfix/expand.cf \
+            auser@mailhub.example.com,buser@mailhub.example.com
+        $ postmap -q bgroup@example.com \
+            ldap:/etc/postfix/no_expand.cf ldap:/etc/postfix/expand.cf \
+            bgroup@mlm.example.com
 
 Non-group objects and groups with delayed expansion (those that have a maildrop
 attribute) are rewritten to a single maildrop value. Groups that don't have a
@@ -312,15 +315,15 @@ assume that forwarded groups are never nested inside expanded groups.
             special_result_attribute = memberdn
             terminal_result_attribute = maildrop
             leaf_result_attribute = mail
-        $ postmap -q auser@example.com ldap:fancy.cf
-        auser@mailhub.example.com
-        $ postmap -q cuser@example.com ldap:fancy.cf
-        cuser@example.com
-        $ postmap -q agroup@example.com ldap:fancy.cf
+        $ postmap -q auser@example.com ldap:/etc/postfix/fancy.cf \
+            auser@mailhub.example.com
+        $ postmap -q cuser@example.com ldap:/etc/postfix/fancy.cf \
+            cuser@example.com
+        $ postmap -q agroup@example.com ldap:/etc/postfix/fancy.cf \
 
     auser@mailhub.example.com,buser@mailhub.example.com,auser@example.org,buser@example.org
-        $ postmap -q bgroup@example.com ldap:fancy.cf
-        bgroup@mlm.example.com
+        $ postmap -q bgroup@example.com ldap:/etc/postfix/fancy.cf \
+            bgroup@mlm.example.com
 
 Above, delayed expansion is enabled via "terminal_result_attribute", which, if
 present, is used as the sole result and all other expansion is suppressed.
index 4a56b61669ebfb4564ec6b14a21b7b35fb64be43..eddcc9847d6f4f959b09fdea5b0e5baa204c55c8 100644 (file)
@@ -366,6 +366,7 @@ delivery attempts.
         /etc/postfix/main.cf:
             transport_maps = hash:/etc/postfix/transport
             slow_destination_rate_delay = 1
+            slow_destination_concurrency_failed_cohort_limit = 100
 
         /etc/postfix/transport:
             example.com  slow:
@@ -380,6 +381,12 @@ delivery attempts.
     $slow_destination_rate_delay seconds between deliveries to the same
     destination.
 
+    IMPORTANT!! The large slow_destination_concurrency_failed_cohort_limit
+    value is needed. This prevents Postfix from deferring all mail for the same
+    destination after only one connection or handshake error (the reason for
+    this is that non-zero slow_destination_rate_delay forces a per-destination
+    concurrency of 1).
+
   * Earlier Postfix versions:
 
       o In the transport map entry for the problem destination, specify a dead
index 76830b67cbe64d517b201612aab15b4dac334882..304f401b8223118b3a737a3f25731a2d819a74b0 100644 (file)
@@ -17,10 +17,10 @@ before proceeding.
 Incompatibility with snapshot 20100610
 ======================================
 
-Postfix no longer appends the system-supplied default CAs to the
-lists specified with *_tls_CAfile or with *_tls_CApath. This prevents
-third-party certificates from being trusted and given mail relay
-permission with permit_tls_all_clientcerts.
+Postfix no longer appends the system-supplied default CA certificates
+to the lists specified with *_tls_CAfile or with *_tls_CApath. This
+prevents third-party certificates from being trusted and given mail
+relay permission with permit_tls_all_clientcerts.
 
 Unfortunately this change may break certificate verification on
 sites that don't use permit_tls_all_clientcerts.  Specify
index 2852219912e0847e268986b124e19e1ad3ef1430..b92af354e4edebdc5736d0ca511418c86495a4ed 100644 (file)
@@ -2,6 +2,12 @@ Wish list:
 
        Remove this file from the stable release.
 
+       Update history in manpage/readme for SQLite driver.
+
+       Make postconf aware of magical suffixes (the ones that
+       combine with transport names) and show them in "postconf
+       -n" output. Making this work with "postconf -d" is trickier.
+
        Need a regular expression table to translate address
        verification responses into hard/soft/accept reply codes.
 
index baccc02a608c1fae44959dd79bc1e48a823b02ff..2f0552bed031289085cf226b001ec4d2531ff84c 100644 (file)
@@ -280,6 +280,7 @@ $readme_directory/SCHEDULER_README:f:root:-:644
 $readme_directory/SMTPD_ACCESS_README:f:root:-:644
 $readme_directory/SMTPD_POLICY_README:f:root:-:644
 $readme_directory/SMTPD_PROXY_README:f:root:-:644
+$readme_directory/SOHO_README:f:root:-:644
 $readme_directory/STANDARD_CONFIGURATION_README:f:root:-:644
 $readme_directory/STRESS_README:f:root:-:644
 $readme_directory/TLS_LEGACY_README:f:root:-:644
@@ -330,6 +331,7 @@ $html_directory/SCHEDULER_README.html:f:root:-:644
 $html_directory/SMTPD_ACCESS_README.html:f:root:-:644
 $html_directory/SMTPD_POLICY_README.html:f:root:-:644
 $html_directory/SMTPD_PROXY_README.html:f:root:-:644
+$html_directory/SOHO_README.html:f:root:-:644
 $html_directory/STANDARD_CONFIGURATION_README.html:f:root:-:644
 $html_directory/STRESS_README.html:f:root:-:644
 $html_directory/TLS_LEGACY_README.html:f:root:-:644
index 2a9483aa2ba7c34f1be8a9f967f28eca8d405980..ac1239b8b14a4e7db52b53698f0cafa1be188260 100644 (file)
@@ -336,8 +336,8 @@ related settings (hosts, ports, bind settings, timeouts, ...) we have:
         search_base = dc=example, dc=com
         query_filter = mail=%s
         result_attribute = memberaddr
-    $ postmap -q agroup@example.com <a href="ldap_table.5.html">ldap</a>:simple.cf
-    auser@example.org,buser@example.org
+    $ postmap -q agroup@example.com <a href="ldap_table.5.html">ldap</a>:/etc/postfix/simple.cf \
+        auser@example.org,buser@example.org
 </pre>
 </blockquote> 
 
@@ -369,8 +369,8 @@ assume for the moment that groups never have a "maildrop" (the "bgroup"
         query_filter = mail=%s
         result_attribute = maildrop
         special_result_attribute = memberdn
-    $ postmap -q agroup@example.com <a href="ldap_table.5.html">ldap</a>:special.cf
-    auser@mailhub.example.com,buser@mailhub.example.com
+    $ postmap -q agroup@example.com <a href="ldap_table.5.html">ldap</a>:/etc/postfix/special.cf \
+        auser@mailhub.example.com,buser@mailhub.example.com
 </pre>
 </blockquote> 
 
@@ -400,12 +400,15 @@ never nested members of groups that are directly expanded. </p>
         query_filter = mail=%s
         result_attribute = maildrop
         special_result_attribute = memberdn
-    $ postmap -q auser@example.com <a href="ldap_table.5.html">ldap</a>:no_expand.cf <a href="ldap_table.5.html">ldap</a>:expand.cf
-    auser@mailhub.example.com
-    $ postmap -q agroup@example.com <a href="ldap_table.5.html">ldap</a>:no_expand.cf <a href="ldap_table.5.html">ldap</a>:expand.cf
-    auser@mailhub.example.com,buser@mailhub.example.com
-    $ postmap -q bgroup@example.com <a href="ldap_table.5.html">ldap</a>:no_expand.cf <a href="ldap_table.5.html">ldap</a>:expand.cf
-    bgroup@mlm.example.com
+    $ postmap -q auser@example.com \
+        <a href="ldap_table.5.html">ldap</a>:/etc/postfix/no_expand.cf <a href="ldap_table.5.html">ldap</a>:/etc/postfix/expand.cf \
+        auser@mailhub.example.com
+    $ postmap -q agroup@example.com \
+        <a href="ldap_table.5.html">ldap</a>:/etc/postfix/no_expand.cf <a href="ldap_table.5.html">ldap</a>:/etc/postfix/expand.cf \
+        auser@mailhub.example.com,buser@mailhub.example.com
+    $ postmap -q bgroup@example.com \
+        <a href="ldap_table.5.html">ldap</a>:/etc/postfix/no_expand.cf <a href="ldap_table.5.html">ldap</a>:/etc/postfix/expand.cf \
+        bgroup@mlm.example.com
 </pre>
 </blockquote> 
 
@@ -429,14 +432,14 @@ expanded groups. </p>
         special_result_attribute = memberdn
         terminal_result_attribute = maildrop
         leaf_result_attribute = mail
-    $ postmap -q auser@example.com <a href="ldap_table.5.html">ldap</a>:fancy.cf
-    auser@mailhub.example.com
-    $ postmap -q cuser@example.com <a href="ldap_table.5.html">ldap</a>:fancy.cf
-    cuser@example.com
-    $ postmap -q agroup@example.com <a href="ldap_table.5.html">ldap</a>:fancy.cf
-    auser@mailhub.example.com,buser@mailhub.example.com,auser@example.org,buser@example.org
-    $ postmap -q bgroup@example.com <a href="ldap_table.5.html">ldap</a>:fancy.cf
-    bgroup@mlm.example.com
+    $ postmap -q auser@example.com <a href="ldap_table.5.html">ldap</a>:/etc/postfix/fancy.cf \
+        auser@mailhub.example.com
+    $ postmap -q cuser@example.com <a href="ldap_table.5.html">ldap</a>:/etc/postfix/fancy.cf \
+        cuser@example.com
+    $ postmap -q agroup@example.com <a href="ldap_table.5.html">ldap</a>:/etc/postfix/fancy.cf \
+        auser@mailhub.example.com,buser@mailhub.example.com,auser@example.org,buser@example.org
+    $ postmap -q bgroup@example.com <a href="ldap_table.5.html">ldap</a>:/etc/postfix/fancy.cf \
+        bgroup@mlm.example.com
 </pre>
 </blockquote> 
 
index f207466882a434b30eda90225cd28b8900320969..185862a98e8edc4b0c0d839fa9f7025083050d43 100644 (file)
@@ -507,6 +507,7 @@ the same destination.  </p>
 /etc/postfix/<a href="postconf.5.html">main.cf</a>:
     <a href="postconf.5.html#transport_maps">transport_maps</a> = hash:/etc/postfix/transport
     slow_destination_rate_delay = 1
+    slow_destination_concurrency_failed_cohort_limit = 100
 
 /etc/postfix/transport:
     example.com  slow:
@@ -524,6 +525,12 @@ the same destination.  </p>
 $slow_destination_rate_delay seconds between deliveries to the same
 destination.  </p>
 
+<p> IMPORTANT!! The large slow_destination_concurrency_failed_cohort_limit
+value is needed. This prevents Postfix from deferring all mail for
+the same destination after only one connection or handshake error
+(the reason for this is that non-zero slow_destination_rate_delay
+forces a per-destination concurrency of 1).  </p>
+
 <li> <p> Earlier Postfix versions: </p>
 
 <ul>
index 7b78f7465c661fe323469dec001965138c816de9..89c43d29c8567e924097314f43b440867b4b34ab 100644 (file)
@@ -54,7 +54,7 @@ map type in <a href="postconf.5.html">main.cf</a> like this: </p>
 
 <blockquote>
 <pre>
-<a href="postconf.5.html#alias_maps">alias_maps</a> = <a href="mysql_table.5.html">sqlite</a>:/etc/postfix/sqlite-aliases.cf
+<a href="postconf.5.html#alias_maps">alias_maps</a> = <a href="sqlite_table.5.html">sqlite</a>:/etc/postfix/sqlite-aliases.cf
 </pre>
 </blockquote>
 
index 37824d458faf068273732e4b3fbc6f075878d57b..976401fd213be69224b1f168582a4f20414ac5d5 100644 (file)
@@ -1980,6 +1980,11 @@ transport-specific override, where <i>transport</i> is the <a href="master.5.htm
 name of the message delivery transport.
 </p>
 
+<p> NOTE: with a non-zero _destination_rate_delay, specify a
+<a href="postconf.5.html#transport_destination_concurrency_failed_cohort_limit"><i>transport</i>_destination_concurrency_failed_cohort_limit</a> of 10
+or more to prevent Postfix from deferring all mail for the same
+destination after only one connection or handshake error. </p>
+
 <p> This feature is available in Postfix 2.5 and later. </p>
 
 
@@ -10880,8 +10885,8 @@ Example:
 (default: $<a href="postconf.5.html#mynetworks">mynetworks</a>)</b></DT><DD>
 
 <p>
-Clients that are excluded from connection count, connection rate,
-or SMTP request rate restrictions. See the <a href="postconf.5.html#mynetworks">mynetworks</a> parameter
+Clients that are excluded from smtpd_client_*_count/rate_limit
+restrictions. See the <a href="postconf.5.html#mynetworks">mynetworks</a> parameter
 description for the parameter value syntax.
 </p>
 
index c385d77ccf9644a33813d470e5f4bfc62f564db8..acf9f90a4a8c80e7eddf5aa4b224ffcfd2c40c57 100644 (file)
@@ -10,9 +10,9 @@ SQLITE_TABLE(5)                                                SQLITE_TABLE(5)
        sqlite_table - Postfix SQLite configuration
 
 <b>SYNOPSIS</b>
-       <b>postmap -q "</b><i>string</i><b>" <a href="mysql_table.5.html">sqlite</a>:/etc/postfix/filename</b>
+       <b>postmap -q "</b><i>string</i><b>" <a href="sqlite_table.5.html">sqlite</a>:/etc/postfix/filename</b>
 
-       <b>postmap -q - <a href="mysql_table.5.html">sqlite</a>:/etc/postfix/</b><i>filename</i> &lt;<i>inputfile</i>
+       <b>postmap -q - <a href="sqlite_table.5.html">sqlite</a>:/etc/postfix/</b><i>filename</i> &lt;<i>inputfile</i>
 
 <b>DESCRIPTION</b>
        The  Postfix  mail system uses optional tables for address
@@ -22,7 +22,7 @@ SQLITE_TABLE(5)                                                SQLITE_TABLE(5)
        Alternatively,  lookup  tables  can be specified as SQLite
        databases.  In order to  use  SQLite  lookups,  define  an
        SQLite source as a lookup table in <a href="postconf.5.html">main.cf</a>, for example:
-           <a href="postconf.5.html#alias_maps">alias_maps</a> = <a href="mysql_table.5.html">sqlite</a>:/etc/sqlite-aliases.cf
+           <a href="postconf.5.html#alias_maps">alias_maps</a> = <a href="sqlite_table.5.html">sqlite</a>:/etc/sqlite-aliases.cf
 
        The  file /etc/postfix/sqlite-aliases.cf has the same for-
        mat as the Postfix  <a href="postconf.5.html">main.cf</a>  file,  and  can  specify  the
@@ -35,7 +35,7 @@ SQLITE_TABLE(5)                                                SQLITE_TABLE(5)
        with a slash or a dot.  The SQLite parameters will then be
        accessible as the name you've given the source in its def-
        inition, an underscore, and the  name  of  the  parameter.
-       For  example,  if  the map is specified as "<a href="mysql_table.5.html">sqlite</a>:<i>sqlite-</i>
+       For  example,  if  the map is specified as "<a href="sqlite_table.5.html">sqlite</a>:<i>sqlite-</i>
        <i>name</i>", the parameter "query" below  would  be  defined  in
        <a href="postconf.5.html">main.cf</a> as "<i>sqlitename</i>_query".
 
index a8f09df4490b7f0ea6e0d75a8b7358954086029f..dd373f27f10aca51ddc7d2b828d56b183c9cc9dd 100644 (file)
@@ -1150,6 +1150,11 @@ Use \fItransport\fR_destination_rate_delay to specify a
 transport-specific override, where \fItransport\fR is the master.cf
 name of the message delivery transport.
 .PP
+NOTE: with a non-zero _destination_rate_delay, specify a
+\fItransport\fR_destination_concurrency_failed_cohort_limit of 10
+or more to prevent Postfix from deferring all mail for the same
+destination after only one connection or handshake error.
+.PP
 This feature is available in Postfix 2.5 and later.
 .SH default_destination_recipient_limit (default: 50)
 The default maximal number of recipients per message delivery.
@@ -6634,8 +6639,8 @@ smtpd_client_connection_rate_limit = 1000
 .ad
 .ft R
 .SH smtpd_client_event_limit_exceptions (default: $mynetworks)
-Clients that are excluded from connection count, connection rate,
-or SMTP request rate restrictions. See the mynetworks parameter
+Clients that are excluded from smtpd_client_*_count/rate_limit
+restrictions. See the mynetworks parameter
 description for the parameter value syntax.
 .PP
 By default, clients in trusted networks are excluded. Specify a
index cca42d88215a13a20c90d9a455bcf1d1bfdb87c0..23cce4bfcf4869e0f233f1bab44d201e3c4815b9 100755 (executable)
@@ -979,7 +979,7 @@ while (<>) {
     s/\b(nisplus):/<a href="nisplus_table.5.html">$1<\/a>:/g;
     s/\b(ldap):/<a href="ldap_table.5.html">$1<\/a>:/g;
     s/\b(regexp):/<a href="regexp_table.5.html">$1<\/a>:/g;
-    s/\b(sqlite):/<a href="mysql_table.5.html">$1<\/a>:/g;
+    s/\b(sqlite):/<a href="sqlite_table.5.html">$1<\/a>:/g;
     s/\b(tcp):/<a href="tcp_table.5.html">$1<\/a>:/g;
 
     # Do nice links for smtp:host:port etc.
index 8cf9998d0e55bef26a620e3e1077e1ee98258f73..a7d3513867e971c7036fa3966bceaca5225c5907 100644 (file)
@@ -336,8 +336,8 @@ related settings (hosts, ports, bind settings, timeouts, ...) we have:
         search_base = dc=example, dc=com
         query_filter = mail=%s
         result_attribute = memberaddr
-    $ postmap -q agroup@example.com ldap:simple.cf
-    auser@example.org,buser@example.org
+    $ postmap -q agroup@example.com ldap:/etc/postfix/simple.cf \
+        auser@example.org,buser@example.org
 </pre>
 </blockquote> 
 
@@ -369,8 +369,8 @@ assume for the moment that groups never have a "maildrop" (the "bgroup"
         query_filter = mail=%s
         result_attribute = maildrop
         special_result_attribute = memberdn
-    $ postmap -q agroup@example.com ldap:special.cf
-    auser@mailhub.example.com,buser@mailhub.example.com
+    $ postmap -q agroup@example.com ldap:/etc/postfix/special.cf \
+        auser@mailhub.example.com,buser@mailhub.example.com
 </pre>
 </blockquote> 
 
@@ -400,12 +400,15 @@ never nested members of groups that are directly expanded. </p>
         query_filter = mail=%s
         result_attribute = maildrop
         special_result_attribute = memberdn
-    $ postmap -q auser@example.com ldap:no_expand.cf ldap:expand.cf
-    auser@mailhub.example.com
-    $ postmap -q agroup@example.com ldap:no_expand.cf ldap:expand.cf
-    auser@mailhub.example.com,buser@mailhub.example.com
-    $ postmap -q bgroup@example.com ldap:no_expand.cf ldap:expand.cf
-    bgroup@mlm.example.com
+    $ postmap -q auser@example.com \
+        ldap:/etc/postfix/no_expand.cf ldap:/etc/postfix/expand.cf \
+        auser@mailhub.example.com
+    $ postmap -q agroup@example.com \
+        ldap:/etc/postfix/no_expand.cf ldap:/etc/postfix/expand.cf \
+        auser@mailhub.example.com,buser@mailhub.example.com
+    $ postmap -q bgroup@example.com \
+        ldap:/etc/postfix/no_expand.cf ldap:/etc/postfix/expand.cf \
+        bgroup@mlm.example.com
 </pre>
 </blockquote> 
 
@@ -429,14 +432,14 @@ expanded groups. </p>
         special_result_attribute = memberdn
         terminal_result_attribute = maildrop
         leaf_result_attribute = mail
-    $ postmap -q auser@example.com ldap:fancy.cf
-    auser@mailhub.example.com
-    $ postmap -q cuser@example.com ldap:fancy.cf
-    cuser@example.com
-    $ postmap -q agroup@example.com ldap:fancy.cf
-    auser@mailhub.example.com,buser@mailhub.example.com,auser@example.org,buser@example.org
-    $ postmap -q bgroup@example.com ldap:fancy.cf
-    bgroup@mlm.example.com
+    $ postmap -q auser@example.com ldap:/etc/postfix/fancy.cf \
+        auser@mailhub.example.com
+    $ postmap -q cuser@example.com ldap:/etc/postfix/fancy.cf \
+        cuser@example.com
+    $ postmap -q agroup@example.com ldap:/etc/postfix/fancy.cf \
+        auser@mailhub.example.com,buser@mailhub.example.com,auser@example.org,buser@example.org
+    $ postmap -q bgroup@example.com ldap:/etc/postfix/fancy.cf \
+        bgroup@mlm.example.com
 </pre>
 </blockquote> 
 
index 2ba89f91aef9dd74fe046895ba59aa5df7e3f4d4..972c567fbbe1aab9499732201f31220a0548cef7 100644 (file)
@@ -507,6 +507,7 @@ the same destination.  </p>
 /etc/postfix/main.cf:
     transport_maps = hash:/etc/postfix/transport
     slow_destination_rate_delay = 1
+    slow_destination_concurrency_failed_cohort_limit = 100
 
 /etc/postfix/transport:
     example.com  slow:
@@ -524,6 +525,12 @@ the same destination.  </p>
 $slow_destination_rate_delay seconds between deliveries to the same
 destination.  </p>
 
+<p> IMPORTANT!! The large slow_destination_concurrency_failed_cohort_limit
+value is needed. This prevents Postfix from deferring all mail for
+the same destination after only one connection or handshake error
+(the reason for this is that non-zero slow_destination_rate_delay
+forces a per-destination concurrency of 1).  </p>
+
 <li> <p> Earlier Postfix versions: </p>
 
 <ul>
index 2e28e08d382c14a9db90445eddf4ba506b5314cd..923f1a2225a1f1985aae42919da4d7870f7b6403 100644 (file)
@@ -4592,8 +4592,8 @@ This feature is available in Postfix 2.2 and later.
 %PARAM smtpd_client_event_limit_exceptions $mynetworks
 
 <p>
-Clients that are excluded from connection count, connection rate,
-or SMTP request rate restrictions. See the mynetworks parameter
+Clients that are excluded from smtpd_client_*_count/rate_limit
+restrictions. See the mynetworks parameter
 description for the parameter value syntax.
 </p>
 
@@ -12059,6 +12059,11 @@ transport-specific override, where <i>transport</i> is the master.cf
 name of the message delivery transport.
 </p>
 
+<p> NOTE: with a non-zero _destination_rate_delay, specify a
+<i>transport</i>_destination_concurrency_failed_cohort_limit of 10
+or more to prevent Postfix from deferring all mail for the same
+destination after only one connection or handshake error. </p>
+
 <p> This feature is available in Postfix 2.5 and later. </p>
 
 %PARAM transport_destination_rate_delay $default_destination_rate_delay
index f7703cd423c781057e3decdb902f3951cbee57df..eb04015d08993dfc23d86819123626ce3b7ebad3 100644 (file)
@@ -20,7 +20,7 @@
   * Patches change both the patchlevel and the release date. Snapshots have no
   * patchlevel; they change the release date only.
   */
-#define MAIL_RELEASE_DATE      "20100618"
+#define MAIL_RELEASE_DATE      "20100707"
 #define MAIL_VERSION_NUMBER    "2.8"
 
 #ifdef SNAPSHOT
index 05e6a339a417d0f19ad0ec0aa6d6a187f2870c50..3408b3f4e6193937be9bbe5ab153b2dc5f5fab40 100644 (file)
@@ -724,6 +724,9 @@ static int qmgr_message_read(QMGR_MESSAGE *message)
                    msg_warn("%s: ignoring bad VERP request: \"%.100s\"",
                             message->queue_id, start);
                } else {
+                   if (msg_verbose)
+                       msg_info("%s: enabling VERP for sender \"%.100s\"",
+                                message->queue_id, message->sender);
                    message->single_rcpt = 1;
                    message->verp_delims = mystrdup(start);
                }
index e54750849be4e65bf7bedb698390b2d7a5c14485..c65728387ceae9555210c4faea10da056903c41e 100644 (file)
@@ -765,6 +765,9 @@ static int qmgr_message_read(QMGR_MESSAGE *message)
                    msg_warn("%s: ignoring bad VERP request: \"%.100s\"",
                             message->queue_id, start);
                } else {
+                   if (msg_verbose)
+                       msg_info("%s: enabling VERP for sender \"%.100s\"",
+                                message->queue_id, message->sender);
                    message->single_rcpt = 1;
                    message->verp_delims = mystrdup(start);
                }
index c1fd1c52adc99e26e2132187c69b33927efbdb8e..1a324b9396c5a7402baf8760bb9df21b8e336685 100644 (file)
@@ -421,6 +421,7 @@ void    tls_param_init(void)
 
     get_mail_conf_str_table(str_table);
     get_mail_conf_int_table(int_table);
+    get_mail_conf_bool_table(bool_table);
 }
 
 /* tls_set_ciphers - Set SSL context cipher list */