]> git.ipfire.org Git - thirdparty/postfix.git/commitdiff
postfix-3.5-20190330
authorWietse Venema <wietse@porcupine.org>
Sat, 30 Mar 2019 05:00:00 +0000 (00:00 -0500)
committerViktor Dukhovni <postfix-users@dukhovni.org>
Mon, 1 Apr 2019 03:28:15 +0000 (23:28 -0400)
postfix/HISTORY
postfix/html/postconf.5.html
postfix/man/man5/postconf.5
postfix/proto/postconf.proto
postfix/src/global/mail_version.h
postfix/src/smtp/smtp_connect.c
postfix/src/smtpd/smtpd.c

index a2e8986f1b5e625cb9294d61df39207936fa14bb..90eb4946c8897f0328706131bed963d5d8632bba 100644 (file)
@@ -24200,7 +24200,22 @@ Apologies for any names omitted.
 20190312
 
        Bugfix (introduced: Postfix 2.2): reject_multi_recipient_bounce
-       produce false rejects with smtpd_end_of_data_restrictons,
-       and for the same reasons, with the Postfix 3.4 BDAT command.
-       The latter was reported by Andreas Schulze. File:
-       smtpd/smtpd_check.c.
+       has been producing false rejects starting with the Postfix
+       2.2 smtpd_end_of_data_restrictons, and for the same reasons,
+       did the same with the Postfix 3.4 BDAT command. The latter
+       was reported by Andreas Schulze. File: smtpd/smtpd_check.c.
+
+20190319
+
+       With message_size_limit=0 (which is NOT DOCUMENTED), BDAT
+       chunks were always too large. Reported by Thorben Thuermer.
+       fix by Viktor Dukhovni. File: src/smtpd/smtpd.c.
+
+20190328
+
+       Bugfix (introduced: Postfix 3.0): LMTP connections over
+       UNIX-domain sockets were cached but not reused, due to a
+       cache lookup key mismatch. Therefore, idle cached connections
+       could exhaust LMTP server resources, resulting in two-second
+       pauses between email deliveries. This problem was investigated
+       by Juliana Rodrigueiro. File: smtp/smtp_connect.c.
index 77249e445b835e1b65fe1de17e6ffc64c0498b4f..88b8b87bf3fcdb8101b909e4036e51f0f231bbc0 100644 (file)
@@ -6241,7 +6241,7 @@ substitutions in regular expression maps. </p>
 (default: empty)</b></DT><DD>
 
 <p> The name of an optional logfile that is written by the Postfix
-<a href="postlogd.8.html">postlogd(8)</a> service. A non-empty value selects logging to syslogd(8).
+<a href="postlogd.8.html">postlogd(8)</a> service. Aempty value selects logging to syslogd(8).
 Specify "/dev/stdout" to select logging to standard output. Stdout
 logging requires that Postfix is started with "postfix start-fg".
 </p>
index 4a92d179cb7e1783153b55a8269f8a51f1411ae7..a97621d4db7806a6a508823de2f95b58535e742e 100644 (file)
@@ -3750,7 +3750,7 @@ substitutions in regular expression maps.
 This feature is available in Postfix 2.3 and later.
 .SH maillog_file (default: empty)
 The name of an optional logfile that is written by the Postfix
-\fBpostlogd\fR(8) service. A non\-empty value selects logging to \fBsyslogd\fR(8).
+\fBpostlogd\fR(8) service. Aempty value selects logging to \fBsyslogd\fR(8).
 Specify "/dev/stdout" to select logging to standard output. Stdout
 logging requires that Postfix is started with "postfix start\-fg".
 .PP
index ae1b6f4bef091ffa469e50508628f1ae6176f53c..77a1baff819d6abb7c2ca4597edf827aadfba1be 100644 (file)
@@ -17550,7 +17550,7 @@ parameter. See there for details. </p>
 %PARAM maillog_file
 
 <p> The name of an optional logfile that is written by the Postfix
-postlogd(8) service. A non-empty value selects logging to syslogd(8).
+postlogd(8) service. Aempty value selects logging to syslogd(8).
 Specify "/dev/stdout" to select logging to standard output. Stdout
 logging requires that Postfix is started with "postfix start-fg".
 </p>
index 04a1ea3d61fc5656768469800592d3c533906e93..61be3f1ed5fab03cfeef2d4fb3cffffdd4dd25e4 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      "20190312"
+#define MAIL_RELEASE_DATE      "20190330"
 #define MAIL_VERSION_NUMBER    "3.5"
 
 #ifdef SNAPSHOT
index dc142ff70f2cec3bdedd758a1a08675432353b84..aad48e40941f7c97d7c3b7391f964a8e888c7150 100644 (file)
@@ -492,6 +492,8 @@ static void smtp_connect_local(SMTP_STATE *state, const char *path)
      * the "unix:" prefix.
      */
     smtp_cache_policy(state, path);
+    if (state->misc_flags & SMTP_MISC_FLAG_CONN_CACHE_MASK)
+       SET_SCACHE_REQUEST_NEXTHOP(state, path);
 
     /*
      * Here we ensure that the iter->addr member refers to a copy of the
@@ -567,6 +569,12 @@ static void smtp_connect_local(SMTP_STATE *state, const char *path)
            msg_panic("%s: unix-domain destination not final!", myname);
        smtp_cleanup_session(state);
     }
+
+    /*
+     * Cleanup.
+     */
+    if (HAVE_SCACHE_REQUEST_NEXTHOP(state))
+       CLEAR_SCACHE_REQUEST_NEXTHOP(state);
 }
 
 /* smtp_scrub_address_list - delete all cached addresses from list */
index d115fca3bbd23bc61c9d1b73e567d95fd50c7472..f3e107072a3ce96cade644f4213ea61a19b828a1 100644 (file)
@@ -3878,7 +3878,8 @@ static int bdat_cmd(SMTPD_STATE *state, int argc, SMTPD_TOKEN *argv)
        }
     }
     /* Block too large chunks. */
-    if (state->act_size > var_message_limit - chunk_size) {
+    if (var_message_limit > 0
+       && state->act_size > var_message_limit - chunk_size) {
        state->error_mask |= MAIL_ERROR_POLICY;
        msg_warn("%s: BDAT request from %s exceeds message size limit",
                 state->queue_id ? state->queue_id : "NOQUEUE",