Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/external/ibm-public/postfix/dist Import Postfix version 2.8....



details:   https://anonhg.NetBSD.org/src/rev/01f0d9091db0
branches:  trunk
changeset: 767804:01f0d9091db0
user:      tron <tron%NetBSD.org@localhost>
date:      Sun Jul 31 10:01:44 2011 +0000

description:
Import Postfix version 2.8.4. Changes since version 2.8.3:
- Performance: a high load of DSN success notification requests could
  slow down the queue manager. Solution: make the trace client
  asynchronous, just like the bounce and defer clients.
- The local(8) delivery agent ignored table lookup errors in
  mailbox_command_maps, mailbox_transport_maps, fallback_transport_maps
  and (while bouncing mail to alias) alias owner lookup.
- Workaround: dbl.spamhaus.org rejects lookups with "No IP queries" even
  if the name has an alphanumerical prefix. We play safe, and skip both
  RHSBL and RHSWL queries for names ending in a numerical suffix.
- The "sendmail -t" command reported "protocol error" instead of "file
  too large", "no space left on device" etc.
- The Postfix Milter client reported a temporary error instead of
  "file too large" in three cases.

diffstat:

 external/ibm-public/postfix/dist/HISTORY                            |  51 ++++++++
 external/ibm-public/postfix/dist/README_FILES/MULTI_INSTANCE_README |   2 +-
 external/ibm-public/postfix/dist/html/MULTI_INSTANCE_README.html    |   2 +-
 external/ibm-public/postfix/dist/html/smtpd.8.html                  |   2 +-
 external/ibm-public/postfix/dist/mantools/postlink                  |   2 +-
 external/ibm-public/postfix/dist/proto/MULTI_INSTANCE_README.html   |   2 +-
 external/ibm-public/postfix/dist/src/cleanup/cleanup_milter.c       |  10 +-
 external/ibm-public/postfix/dist/src/global/abounce.c               |  32 +++++-
 external/ibm-public/postfix/dist/src/global/abounce.h               |   3 +-
 external/ibm-public/postfix/dist/src/global/mail_version.h          |   6 +-
 external/ibm-public/postfix/dist/src/local/Makefile.in              |   1 +
 external/ibm-public/postfix/dist/src/local/bounce_workaround.c      |  13 +-
 external/ibm-public/postfix/dist/src/local/mailbox.c                |  13 ++-
 external/ibm-public/postfix/dist/src/local/unknown.c                |   7 +-
 external/ibm-public/postfix/dist/src/master/master_ent.c            |   8 +-
 external/ibm-public/postfix/dist/src/milter/milter8.c               |   9 +-
 external/ibm-public/postfix/dist/src/oqmgr/qmgr_active.c            |  57 +++++++--
 external/ibm-public/postfix/dist/src/postdrop/postdrop.c            |   6 +-
 external/ibm-public/postfix/dist/src/qmgr/qmgr_active.c             |  57 +++++++--
 external/ibm-public/postfix/dist/src/smtpd/Makefile.in              |   2 +-
 external/ibm-public/postfix/dist/src/smtpd/smtpd_check.c            |  18 ++-
 external/ibm-public/postfix/dist/src/util/sys_defs.h                |   4 +-
 22 files changed, 238 insertions(+), 69 deletions(-)

diffs (truncated from 761 to 300 lines):

diff -r e089c4c750fc -r 01f0d9091db0 external/ibm-public/postfix/dist/HISTORY
--- a/external/ibm-public/postfix/dist/HISTORY  Sun Jul 31 10:00:52 2011 +0000
+++ b/external/ibm-public/postfix/dist/HISTORY  Sun Jul 31 10:01:44 2011 +0000
@@ -16583,3 +16583,54 @@
        reuse a server SASL handle after authentication failure.
        Problem reported by Thomas Jarosch of Intra2net AG. File:
        smtpd/smtpd_proto.c.
+
+20110420
+
+       Performance: a high load of DSN success notification requests
+       could slow down the queue manager. Solution: make the trace
+       client asynchronous, just like the bounce and defer clients.
+       Problem reported by Eduardo M. Stelmaszczyk of terra.com.br.
+       Files: global/abounce.[hc], *qmgr/qmgr_active.c (the
+       qmgr_active.c files are identical).
+
+20110418
+
+       Bugfix (introduced Postfix 2.3 and Postfix 2.7): the Milter
+       client reported some "file too large" errors as temporary
+       errors. Problem reported by Michael Tokarev. Files:
+       milter/milter8.c, cleanup/cleanup_milter.c.
+
+20110426
+
+       Bugfix (introduced in Postfix 1.1, duplicated in Postfix
+       2.3, unrelated mistake in Postfix 2.7): the local(8) delivery
+       agent ignored table lookup errors in mailbox_command_maps,
+       mailbox_transport_maps, fallback_transport_maps and (while
+       bouncing mail to alias) alias owner lookup. Problem reported
+       by William Ono. Files: local/command.c, local/mailbox.c,
+       local/unknown.c, local/bounce_workaround.c.
+
+20110601
+
+       Bugfix (introduced Postfix 2.6 with master_service_disable)
+       loop control error when parsing a malformed master.cf file.
+       Found by Coverity. File: master/master_ent.c.
+
+20110602
+
+       Bugfix (introduced: Postfix 2.7): "sendmail -t" reported
+       "protocol error" after queue file write error.  File:
+       postdrop/postdrop.c.
+
+20110614
+
+       Linux kernel version 3 support. Linus Torvalds has reset
+       the counters for reasons not related to changes in code.
+       Files: makedefs, util/sys_defs.h.
+
+20110615
+
+       Workaround: some Spamhaus RHSBL rejects lookups with "No
+       IP queries" even if the name has an alphanumerical prefix.
+       We play safe, and skip both RHSBL and RHSWL queries for
+       names ending in a numerical suffix.  File: smtpd/smtpd_check.c.
diff -r e089c4c750fc -r 01f0d9091db0 external/ibm-public/postfix/dist/README_FILES/MULTI_INSTANCE_README
--- a/external/ibm-public/postfix/dist/README_FILES/MULTI_INSTANCE_README       Sun Jul 31 10:00:52 2011 +0000
+++ b/external/ibm-public/postfix/dist/README_FILES/MULTI_INSTANCE_README       Sun Jul 31 10:01:44 2011 +0000
@@ -327,7 +327,7 @@
 (MAIL_CONFIG=/etc/postfix-out) of the output instance.
 
   * Lines 1-2: With "authorized_submit_users = root", the superuser can test
-    the postix-out instance with "postmulti -i postfix-out -x sendmail -bv
+    the postfix-out instance with "postmulti -i postfix-out -x sendmail -bv
     recipient...", but otherwise local submission remains disabled.
 
   * Lines 1-2: With "master_service_disable =", the "inet" listeners are re-
diff -r e089c4c750fc -r 01f0d9091db0 external/ibm-public/postfix/dist/html/MULTI_INSTANCE_README.html
--- a/external/ibm-public/postfix/dist/html/MULTI_INSTANCE_README.html  Sun Jul 31 10:00:52 2011 +0000
+++ b/external/ibm-public/postfix/dist/html/MULTI_INSTANCE_README.html  Sun Jul 31 10:01:44 2011 +0000
@@ -420,7 +420,7 @@
 <ul>
 
 <li> <p> Lines 1-2: With "<a href="postconf.5.html#authorized_submit_users">authorized_submit_users</a> = root", the
-superuser can test the postix-out instance with "postmulti -i
+superuser can test the postfix-out instance with "postmulti -i
 postfix-out -x sendmail -bv recipient...", but otherwise local
 submission remains disabled.  </p>
 
diff -r e089c4c750fc -r 01f0d9091db0 external/ibm-public/postfix/dist/html/smtpd.8.html
--- a/external/ibm-public/postfix/dist/html/smtpd.8.html        Sun Jul 31 10:00:52 2011 +0000
+++ b/external/ibm-public/postfix/dist/html/smtpd.8.html        Sun Jul 31 10:01:44 2011 +0000
@@ -558,7 +558,7 @@
 
        Available in Postfix version 2.8 and later:
 
-       <b><a href="postconf.5.html#tls_preempts_cipherlist">tls_preempt_cipherlist</a> (no)</b>
+       <b><a href="postconf.5.html#tls_preempt_cipherlist">tls_preempt_cipherlist</a> (no)</b>
               With SSLv3 and later, use the server's cipher pref-
               erence order instead of the client's cipher prefer-
               ence order.
diff -r e089c4c750fc -r 01f0d9091db0 external/ibm-public/postfix/dist/mantools/postlink
--- a/external/ibm-public/postfix/dist/mantools/postlink        Sun Jul 31 10:00:52 2011 +0000
+++ b/external/ibm-public/postfix/dist/mantools/postlink        Sun Jul 31 10:01:44 2011 +0000
@@ -681,7 +681,7 @@
     s;\btls_null_cipherlist\b;<a href="postconf.5.html#tls_null_cipherlist">$&</a>;g;
     s;\btls_eecdh_strong_curve\b;<a href="postconf.5.html#tls_eecdh_strong_curve">$&</a>;g;
     s;\btls_eecdh_ultra_curve\b;<a href="postconf.5.html#tls_eecdh_ultra_curve">$&</a>;g;
-    s;\btls_preempt_cipherlist\b;<a href="postconf.5.html#tls_preempts_cipherlist">$&</a>;g;
+    s;\btls_preempt_cipherlist\b;<a href="postconf.5.html#tls_preempt_cipherlist">$&</a>;g;
     s;\btls_disable_workarounds\b;<a href="postconf.5.html#tls_disable_workarounds">$&</a>;g;
     s;\btls_append_default_CA\b;<a href="postconf.5.html#tls_append_default_CA">$&</a>;g;
  
diff -r e089c4c750fc -r 01f0d9091db0 external/ibm-public/postfix/dist/proto/MULTI_INSTANCE_README.html
--- a/external/ibm-public/postfix/dist/proto/MULTI_INSTANCE_README.html Sun Jul 31 10:00:52 2011 +0000
+++ b/external/ibm-public/postfix/dist/proto/MULTI_INSTANCE_README.html Sun Jul 31 10:01:44 2011 +0000
@@ -420,7 +420,7 @@
 <ul>
 
 <li> <p> Lines 1-2: With "authorized_submit_users = root", the
-superuser can test the postix-out instance with "postmulti -i
+superuser can test the postfix-out instance with "postmulti -i
 postfix-out -x sendmail -bv recipient...", but otherwise local
 submission remains disabled.  </p>
 
diff -r e089c4c750fc -r 01f0d9091db0 external/ibm-public/postfix/dist/src/cleanup/cleanup_milter.c
--- a/external/ibm-public/postfix/dist/src/cleanup/cleanup_milter.c     Sun Jul 31 10:00:52 2011 +0000
+++ b/external/ibm-public/postfix/dist/src/cleanup/cleanup_milter.c     Sun Jul 31 10:01:44 2011 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: cleanup_milter.c,v 1.1.1.4 2011/03/02 19:32:10 tron Exp $      */
+/*     $NetBSD: cleanup_milter.c,v 1.1.1.5 2011/07/31 10:02:32 tron Exp $      */
 
 /*++
 /* NAME
@@ -216,6 +216,8 @@
 
 /*#define msg_verbose  2*/
 
+static void cleanup_milter_set_error(CLEANUP_STATE *, int);
+
 #define STR(x)         vstring_str(x)
 #define LEN(x)         VSTRING_LEN(x)
 
@@ -433,8 +435,7 @@
      * later.
      */
     if ((new_meta_offset = vstream_fseek(state->dst, (off_t) 0, SEEK_END)) < 0) {
-       msg_warn("%s: seek file %s: %m", myname, cleanup_path);
-       state->errs |= CLEANUP_STAT_WRITE;
+       cleanup_milter_set_error(state, errno);
        return;
     }
     if (state->filter != 0)
@@ -454,8 +455,7 @@
      * value with the location of the new meta record.
      */
     if (vstream_fseek(state->dst, state->append_meta_pt_offset, SEEK_SET) < 0) {
-       msg_warn("%s: seek file %s: %m", myname, cleanup_path);
-       state->errs |= CLEANUP_STAT_WRITE;
+       cleanup_milter_set_error(state, errno);
        return;
     }
     cleanup_out_format(state, REC_TYPE_PTR, REC_TYPE_PTR_FORMAT,
diff -r e089c4c750fc -r 01f0d9091db0 external/ibm-public/postfix/dist/src/global/abounce.c
--- a/external/ibm-public/postfix/dist/src/global/abounce.c     Sun Jul 31 10:00:52 2011 +0000
+++ b/external/ibm-public/postfix/dist/src/global/abounce.c     Sun Jul 31 10:01:44 2011 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: abounce.c,v 1.1.1.1 2009/06/23 10:08:44 tron Exp $     */
+/*     $NetBSD: abounce.c,v 1.1.1.2 2011/07/31 10:02:34 tron Exp $     */
 
 /*++
 /* NAME
@@ -69,9 +69,21 @@
 /*     int     dsn_ret;
 /*     void    (*callback)(int status, char *context);
 /*     char    *context;
+/*
+/*     void    atrace_flush(flags, queue, id, encoding, sender,
+/*                             dsn_envid, dsn_ret, callback, context)
+/*     int     flags;
+/*     const char *queue;
+/*     const char *id;
+/*     const char *encoding;
+/*     const char *sender;
+/*     const char *dsn_envid;
+/*     int     dsn_ret;
+/*     void    (*callback)(int status, char *context);
+/*     char    *context;
 /* DESCRIPTION
 /*     This module implements an asynchronous interface to the
-/*     bounce/defer service for submitting sender notifications
+/*     bounce/defer/trace service for submitting sender notifications
 /*     without waiting for completion of the request.
 /*
 /*     abounce_flush() bounces the specified message to
@@ -94,6 +106,10 @@
 /*     the specified sender, including the defer log that was
 /*     built with defer_append().
 /*
+/*     atrace_flush() returns the specified message to the specified
+/*     sender, including the message delivery record log that was
+/*     built with vtrace_append().
+/*
 /*     Arguments:
 /* .IP flags
 /*     The bitwise OR of zero or more of the following (specify
@@ -361,3 +377,15 @@
                    flags, queue, id, encoding, sender, dsn_envid, dsn_ret,
                    callback, context);
 }
+
+/* atrace_flush - asynchronous trace flush */
+
+void    atrace_flush(int flags, const char *queue, const char *id,
+                            const char *encoding, const char *sender,
+                            const char *dsn_envid, int dsn_ret,
+                            ABOUNCE_FN callback, char *context)
+{
+    abounce_request(MAIL_CLASS_PRIVATE, var_trace_service, BOUNCE_CMD_TRACE,
+                   flags, queue, id, encoding, sender, dsn_envid, dsn_ret,
+                   callback, context);
+}
diff -r e089c4c750fc -r 01f0d9091db0 external/ibm-public/postfix/dist/src/global/abounce.h
--- a/external/ibm-public/postfix/dist/src/global/abounce.h     Sun Jul 31 10:00:52 2011 +0000
+++ b/external/ibm-public/postfix/dist/src/global/abounce.h     Sun Jul 31 10:01:44 2011 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: abounce.h,v 1.1.1.1 2009/06/23 10:08:44 tron Exp $     */
+/*     $NetBSD: abounce.h,v 1.1.1.2 2011/07/31 10:02:34 tron Exp $     */
 
 #ifndef _ABOUNCE_H_INCLUDED_
 #define _ABOUNCE_H_INCLUDED_
@@ -26,6 +26,7 @@
 extern void abounce_flush(int, const char *, const char *, const char *, const char *, const char *, int, ABOUNCE_FN, char *);
 extern void adefer_flush(int, const char *, const char *, const char *, const char *, const char *, int, ABOUNCE_FN, char *);
 extern void adefer_warn(int, const char *, const char *, const char *, const char *, const char *, int, ABOUNCE_FN, char *);
+extern void atrace_flush(int, const char *, const char *, const char *, const char *, const char *, int, ABOUNCE_FN, char *);
 
 extern void abounce_flush_verp(int, const char *, const char *, const char *, const char *, const char *, int, const char *, ABOUNCE_FN, char *);
 extern void adefer_flush_verp(int, const char *, const char *, const char *, const char *, const char *, int, const char *, ABOUNCE_FN, char *);
diff -r e089c4c750fc -r 01f0d9091db0 external/ibm-public/postfix/dist/src/global/mail_version.h
--- a/external/ibm-public/postfix/dist/src/global/mail_version.h        Sun Jul 31 10:00:52 2011 +0000
+++ b/external/ibm-public/postfix/dist/src/global/mail_version.h        Sun Jul 31 10:01:44 2011 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: mail_version.h,v 1.1.1.8 2011/05/11 09:10:58 tron Exp $        */
+/*     $NetBSD: mail_version.h,v 1.1.1.9 2011/07/31 10:02:38 tron Exp $        */
 
 #ifndef _MAIL_VERSION_H_INCLUDED_
 #define _MAIL_VERSION_H_INCLUDED_
@@ -22,8 +22,8 @@
   * Patches change both the patchlevel and the release date. Snapshots have no
   * patchlevel; they change the release date only.
   */
-#define MAIL_RELEASE_DATE      "20110509"
-#define MAIL_VERSION_NUMBER    "2.8.3"
+#define MAIL_RELEASE_DATE      "20110706"
+#define MAIL_VERSION_NUMBER    "2.8.4"
 
 #ifdef SNAPSHOT
 # define MAIL_VERSION_DATE     "-" MAIL_RELEASE_DATE
diff -r e089c4c750fc -r 01f0d9091db0 external/ibm-public/postfix/dist/src/local/Makefile.in
--- a/external/ibm-public/postfix/dist/src/local/Makefile.in    Sun Jul 31 10:00:52 2011 +0000
+++ b/external/ibm-public/postfix/dist/src/local/Makefile.in    Sun Jul 31 10:01:44 2011 +0000
@@ -106,6 +106,7 @@
 bounce_workaround.o: ../../include/been_here.h
 bounce_workaround.o: ../../include/bounce.h
 bounce_workaround.o: ../../include/canon_addr.h
+bounce_workaround.o: ../../include/defer.h
 bounce_workaround.o: ../../include/deliver_request.h
 bounce_workaround.o: ../../include/delivered_hdr.h
 bounce_workaround.o: ../../include/dict.h
diff -r e089c4c750fc -r 01f0d9091db0 external/ibm-public/postfix/dist/src/local/bounce_workaround.c
--- a/external/ibm-public/postfix/dist/src/local/bounce_workaround.c    Sun Jul 31 10:00:52 2011 +0000
+++ b/external/ibm-public/postfix/dist/src/local/bounce_workaround.c    Sun Jul 31 10:01:44 2011 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: bounce_workaround.c,v 1.1.1.1 2010/06/17 18:06:53 tron Exp $   */
+/*     $NetBSD: bounce_workaround.c,v 1.1.1.2 2011/07/31 10:02:41 tron Exp $   */
 
 /*++
 /* NAME
@@ -79,6 +79,7 @@
 #include <strip_addr.h>
 #include <stringops.h>
 #include <bounce.h>
+#include <defer.h>
 #include <split_addr.h>
 #include <canon_addr.h>
 
@@ -99,6 +100,7 @@
        char   *stripped_recipient;
        char   *owner_alias;
        const char *owner_expansion;
+       int     saved_dict_errno;
 
 #define FIND_OWNER(lhs, rhs, addr) { \
        lhs = concatenate("owner-", addr, (char *) 0); \
@@ -106,8 +108,9 @@
        rhs = maps_find(alias_maps, lhs, DICT_FLAG_NONE); \
     }
 
+       dict_errno = 0;
        FIND_OWNER(owner_alias, owner_expansion, state.msg_attr.rcpt.address);
-       if (owner_expansion == 0
+       if ((saved_dict_errno = dict_errno) == 0 && owner_expansion == 0
            && (stripped_recipient = strip_addr(state.msg_attr.rcpt.address,
                                                (char **) 0,
                                                *var_rcpt_delim)) != 0) {
@@ -115,13 +118,17 @@



Home | Main Index | Thread Index | Old Index