]> git.ipfire.org Git - thirdparty/postfix.git/commitdiff
postfix-3.1-20150421
authorWietse Venema <wietse@porcupine.org>
Tue, 21 Apr 2015 05:00:00 +0000 (00:00 -0500)
committerViktor Dukhovni <postfix-users@dukhovni.org>
Thu, 23 Apr 2015 18:38:04 +0000 (14:38 -0400)
13 files changed:
postfix/HISTORY
postfix/README_FILES/DEBUG_README
postfix/WISHLIST
postfix/conf/main.cf
postfix/html/DEBUG_README.html
postfix/html/postconf.5.html
postfix/makedefs
postfix/man/man5/postconf.5
postfix/proto/DEBUG_README.html
postfix/proto/postconf.proto
postfix/src/global/mail_version.h
postfix/src/util/scan_dir.c
postfix/src/util/strcasecmp_utf8.c

index d14bd2a4943b971473dc6fe6cef47f6a1e0cb53d..8271d81c88a748a0cb32ae2efec8efcdce08120f 100644 (file)
@@ -21611,8 +21611,9 @@ Apologies for any names omitted.
 
 20150214
 
-       Bugfix: missing #ifdef USE_TLS inside #ifdef USE_SASL_AUTH
-       broke the build. Viktor Dukhovni. File: smtpd/smtpd.c.
+       Bugfix (introduced: Postfix 3.0): missing #ifdef USE_TLS
+       inside #ifdef USE_SASL_AUTH broke the build. Viktor Dukhovni.
+       File: smtpd/smtpd.c.
 
        Cleanup: missing errno logging in bounce daemon clients.
        This made troubleshooting significantly more difficult.
@@ -21647,9 +21648,10 @@ Apologies for any names omitted.
 
 20150221
 
-       Bugfix: don't append '.' to the DNS resource record value,
-       when converting TXT records to the string form that is used
-       used by xxx_dns_reply_filter.  File: dns/dns_strrecord.c.
+       Bugfix (introduced: Postfix 3.0): don't append '.' to the
+       DNS resource record value, when converting TXT records to
+       the string form that is used used by xxx_dns_reply_filter.
+       File: dns/dns_strrecord.c.
 
 20150313
 
@@ -21690,15 +21692,38 @@ Apologies for any names omitted.
 
        Bugfix (introduced: Postfix 1.1.0): post-install expanded
        macros in parameter values when trying to detect parameter
-       overrides. Julian Reich, Viktor Dukhovni, and Wietse.  File:
+       overrides, causing unnecessary main.cf updates during Postfix
+       start-up. Julian Reich, Viktor Dukhovni, and Wietse.  File:
        conf/post-install.
 
 20150330
 
-       Bitrot: prepare for future changes in OpenSSL. Viktor
-       Dukhovni. File: tlstls_dane.c.
+       Bitrot: prepare for future changes in OpenSSL API. Viktor
+       Dukhovni. File: tls_dane.c.
 
        Safety: instead of bouncing mail, report a soft error when
        SASL infrastucture breaks.  Viktor Dukhovni, Emmanuel Fuste.
        Files: smtpd/smtpd_sasl_glue.c, xsasl/xsasl.h,
        xsasl/xsasl_cyrus_server.c, xsasl/xsasl_dovecot_server.c.
+
+20150401
+
+       Documentation: update the mydestination default value in
+       the stock main.cf file.  File: conf/main.cf.
+
+20150404
+
+       Documentation: add "postconf -m" output to problem reports. File:
+       proto/DEBUG_README.html.
+
+20150418
+
+       Portability: use the icu-config utility to locate the ICU
+       include and library files. With this, Postfix builds out
+       of the box on MacOS X. File: makedefs.
+
+20150421
+
+       Bugfix (introduced: 19970309): reset errno before calling
+       readdir(), in order to distinguish between end-of-directory and
+       an error condition. File: scandir,c,
index 6e041d733a08056dcd623821f3d28b62b2551458..589036fa01715d3e7d744de920fe3a66ffd1ef6a 100644 (file)
@@ -373,8 +373,12 @@ When reporting a problem, be sure to include the following information.
     host names consistently. Replace each letter by "A", each digit by "D" so
     that the helpers can still recognize syntactical errors.
 
-  * Output from "p\bpo\bos\bst\btc\bco\bon\bnf\bf -\b-n\bn". Please do not send your main.cf file, or 500+
-    lines of p\bpo\bos\bst\btc\bco\bon\bnf\bf output.
+  * Command output from:
+
+      o "p\bpo\bos\bst\btc\bco\bon\bnf\bf -\b-n\bn". Please do not send your main.cf file, or 1000+ lines of
+        p\bpo\bos\bst\btc\bco\bon\bnf\bf command output.
+
+      o "p\bpo\bos\bst\btc\bco\bon\bnf\bf -\b-M\bMf\bf" (Postfix 2.9 or later).
 
   * Better, provide output from the p\bpo\bos\bst\btf\bfi\bin\bng\bge\ber\br tool. This can be found at http:
     //ftp.wl0.org/SOURCES/postfinger.
index 52791c9feaa5c2e03b6be531516feccbbcee9245..e347e2d3d2f59e02d1935f0f4897f6cc6c7a4311 100644 (file)
@@ -24,11 +24,17 @@ Wish list:
        installation/upgrade/packaging? postfix-install for early
        warning, and post-install as a safety net?
 
-       Automatically do the equivalent of syslog_name=postfix/mumble
-       when basename(mumble) differs from basename(program file).
-       This is especially desirable for mail delivery transports
-       (smtp versus relay) as it identifies what scheduler parameters
-       are in effect.
+       When the service basename differs from the program file
+       basename, either prepend the service name to the syslogname (as
+       if syslog_name=postfix/service/program), or prepend the service
+       name to the process name (perhaps too confusing).  The service
+       indication is desirable for mail delivery transports (smtp
+       versus relay) as it identifies what scheduler parameters are
+       in effect, but it is also desirable for mail receiving services
+       (smtp versus submission verus smtps as configured in the stock
+       master.cf file). This requires exceptions for some program names
+       (exclude smtpd to avoid logging postfix/smtp/smtpd which could
+       result in more confusion, and maybe other program names).
 
        UTF8 DNS[BW]L domain name.
 
@@ -38,8 +44,8 @@ Wish list:
        Try to allow UTF-8 myhostname/mydomain, at least in bounce
        template expansion.
 
-       No enhanced status code when rejecting connection before
-       the HELO handshake is completed.
+       In the SMTP server, do not issue an enhanced status code when
+       rejecting a connection before the HELO handshake is completed.
 
        Maybe don't whitelist a client that has maxed out its
        per-MTA connection count limit.
index 1fc886b824e2236b5dfc305686cfedada3feee47..0c36e3ac78ee80a0f5da463459b4dca6120f26db 100644 (file)
@@ -153,8 +153,8 @@ mail_owner = postfix
 # compatible delivery agent that lookups all recipients in /etc/passwd
 # and /etc/aliases or their equivalent.
 #
-# The default is $myhostname + localhost.$mydomain.  On a mail domain
-# gateway, you should also include $mydomain.
+# The default is $myhostname + localhost.$mydomain + localhost.  On
+# a mail domain gateway, you should also include $mydomain.
 #
 # Do not specify the names of virtual domains - those domains are
 # specified elsewhere (see VIRTUAL_README).
index 708290b0acdd7c5b5c6e4134d4976d38c6c9cdb9..30a06285a98098adc50709345733a78559aac329 100644 (file)
@@ -554,8 +554,16 @@ by "A", each digit
 by "D" so that the helpers can still recognize syntactical errors.
 </p>
 
-<li> <p> Output from "<b>postconf -n</b>". Please do not send your
-<a href="postconf.5.html">main.cf</a> file, or 500+ lines of <b>postconf</b> output. </p>
+<li> <p> Command output from:</p>
+
+<ul>
+
+<li> <p> "<b>postconf -n</b>". Please do not send your <a href="postconf.5.html">main.cf</a> file,
+or 1000+ lines of <b>postconf</b> command output. </p>
+
+<li> <p> "<b>postconf -Mf</b>" (Postfix 2.9 or later). </p>
+
+</ul>
 
 <li> <p> Better, provide output from the <b>postfinger</b> tool.
 This can be found at <a href="http://ftp.wl0.org/SOURCES/postfinger">http://ftp.wl0.org/SOURCES/postfinger</a>.  </p>
index 5895cd82a39a696a50d18dc2be4433ce36c244ab..5c31ff7d2ff7b9f53109cd65309b446ad7066f74 100644 (file)
@@ -9872,8 +9872,11 @@ This feature is available in Postfix 2.0 and later.
 <p> The address type ("ipv6", "ipv4" or "any") that the Postfix
 SMTP client will try first, when a destination has IPv6 and IPv4
 addresses with equal MX preference. This feature has no effect
-unless the <a href="postconf.5.html#inet_protocols">inet_protocols</a> setting enables both IPv4 and IPv6.
-With Postfix 2.8 the default is "ipv6".  </p>
+unless the <a href="postconf.5.html#inet_protocols">inet_protocols</a> setting enables both IPv4 and IPv6. </p>
+
+<p> Postfix SMTP client address preference has evolved. With Postfix
+2.8 the default is "ipv6"; earlier implementations are hard-coded
+to prefer IPv6 over IPv4. </p>
 
 <p> Notes for mail delivery between sites that have both IPv4 and
 IPv6 connectivity: </p>
index 18719720cb469dcfee15a7b2fb25e6cdda53b20b..11698444e645a0ffbd43fdd4338a4da747aea026 100644 (file)
@@ -731,9 +731,11 @@ esac
 # Look for the ICU library and enable unicode email if available.
 #
 case "$CCARGS" in
- *-DNO_EAI*) ;;
-          *) trap 'rm -f makedefs.test makedefs.test.[co]' 1 2 3 15
-             cat >makedefs.test.c <<'EOF'
+*-DNO_EAI*) ;;
+        *) icu_cppflags=`(icu-config --cppflags) 2>/dev/null` && {
+               icu_ldflags=`(icu-config --ldflags) 2>/dev/null` && {
+                   trap 'rm -f makedefs.test makedefs.test.[co]' 1 2 3 15
+                   cat >makedefs.test.c <<'EOF'
 #include <unicode/uidna.h>
 #include <stdlib.h>
 
@@ -753,14 +755,17 @@ int main(int argc, char **argv)
                                  &error) != 14);
 }
 EOF
-             ${CC-gcc} -o makedefs.test makedefs.test.c -I/usr/local/include \
-               -L/usr/local/lib -licuuc >/dev/null 2>&1
-             if ./makedefs.test 2>/dev/null ; then
-                 SYSLIBS="$SYSLIBS -L/usr/local/lib -licuuc"
-             else
-                 CCARGS="$CCARGS -DNO_EAI"
-             fi
-             rm -f makedefs.test makedefs.test.[co]
+                   ${CC-gcc} -o makedefs.test makedefs.test.c $icu_cppflags \
+                       $icu_ldflags >/dev/null 2>&1
+                   if ./makedefs.test 2>/dev/null ; then
+                       CCARGS="$CCARGS $icu_cppflags"
+                       SYSLIBS="$SYSLIBS $icu_ldflags"
+                   else
+                       CCARGS="$CCARGS -DNO_EAI"
+                   fi
+                   rm -f makedefs.test makedefs.test.[co]
+               }
+           } || CCARGS="$CCARGS -DNO_EAI"
 esac
 
 #
index 18f2eb08301106c8ee93e66f643a97159bcc0b42..f58853c7617042100e626e6946b13f1973622b1a 100644 (file)
@@ -6092,7 +6092,10 @@ The address type ("ipv6", "ipv4" or "any") that the Postfix
 SMTP client will try first, when a destination has IPv6 and IPv4
 addresses with equal MX preference. This feature has no effect
 unless the inet_protocols setting enables both IPv4 and IPv6.
-With Postfix 2.8 the default is "ipv6".
+.PP
+Postfix SMTP client address preference has evolved. With Postfix
+2.8 the default is "ipv6"; earlier implementations are hard\-coded
+to prefer IPv6 over IPv4.
 .PP
 Notes for mail delivery between sites that have both IPv4 and
 IPv6 connectivity:
index a65e42a1a5954379e6efe5fc870e7ba07993a7b5..4c1877c9c42ef9f0553d3cb8b8bd1f9ad6448a3b 100644 (file)
@@ -554,8 +554,16 @@ by "A", each digit
 by "D" so that the helpers can still recognize syntactical errors.
 </p>
 
-<li> <p> Output from "<b>postconf -n</b>". Please do not send your
-main.cf file, or 500+ lines of <b>postconf</b> output. </p>
+<li> <p> Command output from:</p>
+
+<ul>
+
+<li> <p> "<b>postconf -n</b>". Please do not send your main.cf file,
+or 1000+ lines of <b>postconf</b> command output. </p>
+
+<li> <p> "<b>postconf -Mf</b>" (Postfix 2.9 or later). </p>
+
+</ul>
 
 <li> <p> Better, provide output from the <b>postfinger</b> tool.
 This can be found at http://ftp.wl0.org/SOURCES/postfinger.  </p>
index c9de2433fb69d17936b72d58515db0b10e35923a..edb85cf2d2dcdf6d382660de65589dd52b345618 100644 (file)
@@ -14186,8 +14186,11 @@ destination with each content_filter value or FILTER action. </p>
 <p> The address type ("ipv6", "ipv4" or "any") that the Postfix
 SMTP client will try first, when a destination has IPv6 and IPv4
 addresses with equal MX preference. This feature has no effect
-unless the inet_protocols setting enables both IPv4 and IPv6.
-With Postfix 2.8 the default is "ipv6".  </p>
+unless the inet_protocols setting enables both IPv4 and IPv6. </p>
+
+<p> Postfix SMTP client address preference has evolved. With Postfix
+2.8 the default is "ipv6"; earlier implementations are hard-coded
+to prefer IPv6 over IPv4. </p>
 
 <p> Notes for mail delivery between sites that have both IPv4 and
 IPv6 connectivity: </p>
index 6fab99f44c11cfbdb600f74438ed12b65ba7005b..0ed0e08c5f49e65eb9c96e0385dbed68d36af005 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      "20150330"
+#define MAIL_RELEASE_DATE      "20150421"
 #define MAIL_VERSION_NUMBER    "3.1"
 
 #ifdef SNAPSHOT
index d8c76cfceea03220ab93bd5446a35f1bddafab72..432c9f4f6f3f349103438bd6a77387213d542984 100644 (file)
@@ -78,6 +78,7 @@
 #endif
 #endif
 #include <string.h>
+#include <errno.h>
 
 /* Utility library. */
 
@@ -177,6 +178,13 @@ char   *scan_dir_next(SCAN_DIR *scan)
 #define STREQ(x,y)     (strcmp((x),(y)) == 0)
 
     if (info) {
+
+       /*
+        * Fix 20150421: readdir() does not reset errno after reaching the
+        * end-of-directory. This dates back all the way to the initial
+        * implementation of 19970309.
+        */
+       errno = 0;
        while ((dp = readdir(info->dir)) != 0) {
            if (STREQ(dp->d_name, ".") || STREQ(dp->d_name, "..")) {
                if (msg_verbose > 1)
index 22ed434787e7dae32fc8fe37bb77537146757d29..07e576a556f96a1ff4d7698adcd8459eeed1adcb 100644 (file)
@@ -137,7 +137,7 @@ int     strncasecmp_utf8x(int flags, const char *s1, const char *s2,
 
     /*
      * Caution: casefolding may change the number of bytes. See comments
-     * above for concerns about strcpy().
+     * above for concerns about strcmp().
      */
     flags &= CASEF_FLAG_UTF8;
     casefoldx(flags, f1, s1, len);