Hello community, here is the log from the commit of package postfix for openSUSE:Factory checked in at 2011-11-10 16:03:25 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/postfix (Old) and /work/SRC/openSUSE:Factory/.postfix.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "postfix", Maintainer is "vark...@suse.com" Changes: -------- --- /work/SRC/openSUSE:Factory/postfix/postfix.changes 2011-11-05 11:57:31.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.postfix.new/postfix.changes 2011-11-10 16:03:28.000000000 +0100 @@ -1,0 +2,13 @@ +Wed Nov 9 20:05:38 UTC 2011 - vark...@suse.com + +- update to 2.8.7 + Bugfixes: + smtpd(8) did not sanitize newline characters in cleanup(8) + REJECT messages, causing them to be sent out via SMTP as bare newline characters. + smtpd(8) sent multi-line responses from a before-queue content filter as text with + bare <LF> instead of <CR><LF>. + Workaround: postscreen sent non-compliant SMTP responses (220- followed by 421) + when it could not give a connection to a real smtpd process, causing some + remote SMTP clients to bounce mail. + +------------------------------------------------------------------- Old: ---- postfix-2.8.5.tar.bz2 New: ---- postfix-2.8.7.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ postfix.spec ++++++ --- /var/tmp/diff_new_pack.YHDZkU/_old 2011-11-10 16:03:30.000000000 +0100 +++ /var/tmp/diff_new_pack.YHDZkU/_new 2011-11-10 16:03:30.000000000 +0100 @@ -19,7 +19,7 @@ Name: postfix Summary: A fast, secure, and flexible mailer -Version: 2.8.5 +Version: 2.8.7 Release: 1 License: IBM Public License .. Group: Productivity/Networking/Email/Servers ++++++ postfix-2.8.5.tar.bz2 -> postfix-2.8.7.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/postfix-2.8.5/HISTORY new/postfix-2.8.7/HISTORY --- old/postfix-2.8.5/HISTORY 2011-08-31 22:02:02.000000000 +0200 +++ new/postfix-2.8.7/HISTORY 2011-11-05 20:16:53.000000000 +0100 @@ -16648,3 +16648,50 @@ Bugfix: allow for Milters that send an SMTP server reply without RFC 3463 enhanced status code. Reported by Vladimir Vassiliev. File: milter/milter8.c. + +20110903 + + Bugfix: master daemon panic with "master_spawn: at process + limit" error, when "postfix reload" reduced the process + limit from (a value larger than the current process count + for some service) to (a value <= the current process count), + and then a new connection was made to that service. This + is the smallest change that eliminates the problem. The + final solution involves structural change, and goes into + the development release. File: master/master_avail.c. + +20110921 + + Bugfix (introduced: Postfix 1.1): smtpd(8) did not sanitize + newline characters in cleanup(8) REJECT messages, causing + them to be sent out via SMTP as bare newline characters. + This happened when a REJECT pattern matched multi-line + header text. Discovered by Kevin Locke. File: smtpd/smtpd.c. + +20110922 + + Bugfix (introduced: Postfix 2.1): smtpd(8) sent multi-line + responses from a before-queue content filter as text with + bare <LF> instead of <CR><LF>. Found during code maintenance. + File: smtpd/smtpd_proxy.c. + +20111020 + + EAI Future-proofing: don't apply strict_mime_encoding_domain + checks to unknown message subtypes such as message/global*. + File: global/mime_state.c. + +20111025 + + Workaround: postscreen sent non-compliant SMTP responses + (220- followed by 421) when it could not give a connection + to a real smtpd process, causing some remote SMTP clients + to bounce mail. The workaround is to hang up without sending + the 421 reply (which is harmless); the complete fix involves + too much change for a stable release. Problem reported by + Ralf Hildebrandt. File: postscreen/postscreen_send.c. + +20111102 + + Portability: OpenBSD 5.x is supported. Files: makedefs, + util/sys_defs.h. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/postfix-2.8.5/makedefs new/postfix-2.8.7/makedefs --- old/postfix-2.8.5/makedefs 2011-06-16 00:36:37.000000000 +0200 +++ new/postfix-2.8.7/makedefs 2011-11-03 00:46:22.000000000 +0100 @@ -152,6 +152,8 @@ ;; OpenBSD.4*) SYSTYPE=OPENBSD4 ;; + OpenBSD.5*) SYSTYPE=OPENBSD5 + ;; ekkoBSD.1*) SYSTYPE=EKKOBSD1 ;; NetBSD.1*) SYSTYPE=NETBSD1 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/postfix-2.8.5/src/global/mail_version.h new/postfix-2.8.7/src/global/mail_version.h --- old/postfix-2.8.5/src/global/mail_version.h 2011-09-02 23:57:19.000000000 +0200 +++ new/postfix-2.8.7/src/global/mail_version.h 2011-11-05 20:17:13.000000000 +0100 @@ -20,8 +20,8 @@ * Patches change both the patchlevel and the release date. Snapshots have no * patchlevel; they change the release date only. */ -#define MAIL_RELEASE_DATE "20110902" -#define MAIL_VERSION_NUMBER "2.8.5" +#define MAIL_RELEASE_DATE "20111105" +#define MAIL_VERSION_NUMBER "2.8.7" #ifdef SNAPSHOT # define MAIL_VERSION_DATE "-" MAIL_RELEASE_DATE diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/postfix-2.8.5/src/global/mime_state.c new/postfix-2.8.7/src/global/mime_state.c --- old/postfix-2.8.5/src/global/mime_state.c 2010-12-06 00:21:27.000000000 +0100 +++ new/postfix-2.8.7/src/global/mime_state.c 2011-10-20 23:31:43.000000000 +0200 @@ -925,7 +925,9 @@ if (state->curr_domain != MIME_ENC_7BIT) REPORT_ERROR(state, MIME_ERR_ENCODING_DOMAIN, mime_state_enc_name(state->curr_encoding)); - } else { + } + /* EAI: message/global allows non-identity encoding. */ + else if (state->curr_stype == MIME_STYPE_RFC822) { if (state->curr_encoding != state->curr_domain) REPORT_ERROR(state, MIME_ERR_ENCODING_DOMAIN, mime_state_enc_name(state->curr_encoding)); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/postfix-2.8.5/src/master/master_avail.c new/postfix-2.8.7/src/master/master_avail.c --- old/postfix-2.8.5/src/master/master_avail.c 2009-06-11 22:46:17.000000000 +0200 +++ new/postfix-2.8.7/src/master/master_avail.c 2011-10-20 23:25:12.000000000 +0200 @@ -85,7 +85,9 @@ if (event == 0) /* XXX Can this happen? */ return; - if (MASTER_THROTTLED(serv)) { /* XXX interface botch */ + /* XXX Should check these when the process or service status is changed. */ + if (!MASTER_LIMIT_OK(serv->max_proc, serv->total_proc) + || MASTER_THROTTLED(serv)) { /* XXX interface botch */ for (n = 0; n < serv->listen_fd_count; n++) event_disable_readwrite(serv->listen_fd[n]); } else { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/postfix-2.8.5/src/postscreen/postscreen_send.c new/postfix-2.8.7/src/postscreen/postscreen_send.c --- old/postfix-2.8.5/src/postscreen/postscreen_send.c 2011-02-16 14:40:32.000000000 +0100 +++ new/postfix-2.8.7/src/postscreen/postscreen_send.c 2011-11-05 14:48:27.000000000 +0100 @@ -187,7 +187,9 @@ PASS_CONNECT(psc_smtpd_service_name, NON_BLOCKING, PSC_SEND_SOCK_CONNECT_TIMEOUT)) < 0) { msg_warn("cannot connect to service %s: %m", psc_smtpd_service_name); - PSC_SEND_REPLY(state, "421 4.3.2 All server ports are busy\r\n"); + /* Best effort: after sending 220-, hang up without sending 421. */ + if ((state->flags & PSC_STATE_FLAG_PREGR_TODO) == 0) + PSC_SEND_REPLY(state, "421 4.3.2 All server ports are busy\r\n"); psc_free_session_state(state); return; } @@ -196,7 +198,9 @@ vstream_fileno(state->smtp_client_stream)) < 0) { msg_warn("cannot pass connection to service %s: %m", psc_smtpd_service_name); - PSC_SEND_REPLY(state, "421 4.3.2 No system resources\r\n"); + /* Best effort: after sending 220-, hang up without sending 421. */ + if ((state->flags & PSC_STATE_FLAG_PREGR_TODO) == 0) + PSC_SEND_REPLY(state, "421 4.3.2 No system resources\r\n"); psc_free_session_state(state); return; } else { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/postfix-2.8.5/src/smtpd/smtpd.c new/postfix-2.8.7/src/smtpd/smtpd.c --- old/postfix-2.8.5/src/smtpd/smtpd.c 2011-02-07 19:34:41.000000000 +0100 +++ new/postfix-2.8.7/src/smtpd/smtpd.c 2011-10-20 23:28:55.000000000 +0200 @@ -3040,6 +3040,7 @@ if (state->err == 0) { why = vstring_alloc(10); state->err = mail_stream_finish(state->dest, why); + printable(STR(why), ' '); } else mail_stream_cleanup(state->dest); state->dest = 0; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/postfix-2.8.5/src/smtpd/smtpd_proxy.c new/postfix-2.8.7/src/smtpd/smtpd_proxy.c --- old/postfix-2.8.5/src/smtpd/smtpd_proxy.c 2010-09-03 14:20:45.000000000 +0200 +++ new/postfix-2.8.7/src/smtpd/smtpd_proxy.c 2011-10-20 23:30:15.000000000 +0200 @@ -784,7 +784,7 @@ */ if (LEN(proxy->buffer) < var_line_limit) { if (VSTRING_LEN(proxy->buffer)) - VSTRING_ADDCH(proxy->buffer, '\n'); + vstring_strcat(proxy->buffer, "\r\n"); vstring_strcat(proxy->buffer, STR(buffer)); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/postfix-2.8.5/src/util/sys_defs.h new/postfix-2.8.7/src/util/sys_defs.h --- old/postfix-2.8.5/src/util/sys_defs.h 2011-06-16 00:36:37.000000000 +0200 +++ new/postfix-2.8.7/src/util/sys_defs.h 2011-11-03 00:46:22.000000000 +0100 @@ -28,6 +28,7 @@ || defined(FREEBSD8) \ || defined(BSDI2) || defined(BSDI3) || defined(BSDI4) \ || defined(OPENBSD2) || defined(OPENBSD3) || defined(OPENBSD4) \ + || defined(OPENBSD5) \ || defined(NETBSD1) || defined(NETBSD2) || defined(NETBSD3) \ || defined(NETBSD4) \ || defined(EKKOBSD1) -- To unsubscribe, e-mail: opensuse-commit+unsubscr...@opensuse.org For additional commands, e-mail: opensuse-commit+h...@opensuse.org