Postfix 2.0.2 fixes a few things that broke with Postfix 2.0.1. - "sendmail -bs" was broken with Postfix 2.0.1. It tried to contact the new proxymap service (in this mode, Postfix should not attempt to open any lookup tables). This was already fixed in the 20030105 snapshot release but not propagated to the stable release. - "makedefs" was broken with Postfix 2.0.1 and no longer recognized that PCRE was installed on SUSE Linux. It now allows null output from the "pcre-config" utility (which is part of PCRE version 3). Prereq: "2.0.1" diff -cr /tmp/postfix-2.0.1/src/global/mail_version.h ./src/global/mail_version.h *** /tmp/postfix-2.0.1/src/global/mail_version.h Sun Jan 12 20:10:28 2003 --- ./src/global/mail_version.h Wed Jan 15 10:07:19 2003 *************** *** 20,29 **** * Patches change the patchlevel and the release date. Snapshots change the * release date only, unless they include the same bugfix as a patch release. */ ! #define MAIL_RELEASE_DATE "20030112" #define VAR_MAIL_VERSION "mail_version" ! #define DEF_MAIL_VERSION "2.0.1" extern char *var_mail_version; /* --- 20,29 ---- * Patches change the patchlevel and the release date. Snapshots change the * release date only, unless they include the same bugfix as a patch release. */ ! #define MAIL_RELEASE_DATE "20030115" #define VAR_MAIL_VERSION "mail_version" ! #define DEF_MAIL_VERSION "2.0.2" extern char *var_mail_version; /* diff -cr /tmp/postfix-2.0.1/HISTORY ./HISTORY *** /tmp/postfix-2.0.1/HISTORY Sun Jan 12 12:19:44 2003 --- ./HISTORY Wed Jan 15 10:12:46 2003 *************** *** 7546,7551 **** --- 7546,7583 ---- For safety sake, threw in the local postmaster address as well. File: smtpd/smtpd_check.c. + 20030113 + + Added MAILER-DAEMON to the list of always recognized local + addresses, since it is generated by Postfix bounces. File: + smtpd/smtpd_check.c. + + 20030114 + + Bugfix: transport_errno was not reset upon successful + transport map wildcard lookup after an earlier failure. + Reported by Victor Duchovny. File: trivial-rewrite/transport.c. + + Cleanup: unnecessary warnings from the proxymap client + after proxymap server disconnect. File: global/dict_proxy.c. + + Cleanup: Patrik Rak found a few more chattr invocations + that were missed 20021209. Files: postfix-install, + conf/post-install. + + Cleanup: the pcre-config command can produce null outputs. + Matthias Andree. File: makedefs. + + Bugfix: the virtual(8) Makefile included $(AUXLIBS) in the + dependencies. + + 20030115 + + Bugfix: fixed in the snapshots 20030105 but missed in the + stable release. "sendmail -bs" tried to access the proxymap + service. It should not try to open any user/domain/uce + related tables at all. File: smtpd/smtpd.c. + Open problems: Low: after successful delivery, per-queue window += 1/window, diff -cr /tmp/postfix-2.0.1/conf/post-install ./conf/post-install *** /tmp/postfix-2.0.1/conf/post-install Sun Jan 12 12:06:50 2003 --- ./conf/post-install Tue Jan 14 12:58:22 2003 *************** *** 426,432 **** if [ -n "$create" -a "$type" = "d" -a -n "$create_flag" -a ! -d "$path" ] then mkdir $path || exit 1 - $CHATTR $path >/dev/null 2>/dev/null set_permission=1 # Update all owner/group/mode settings. elif [ -n "$set_perms" ] --- 426,431 ---- diff -cr /tmp/postfix-2.0.1/makedefs ./makedefs *** /tmp/postfix-2.0.1/makedefs Fri Jan 10 15:17:17 2003 --- ./makedefs Tue Jan 14 17:21:44 2003 *************** *** 290,302 **** case "$CCARGS" in *-DHAS_PCRE*) ;; *-DNO_PCRE*) ;; ! *) pcre_cflags=`(pcre-config --cflags) 2>/dev/null` ! pcre_libs=`(pcre-config --libs) 2>/dev/null` ! if [ -n "$pcre_cflags" -a -n "$pcre_libs" ] ! then ! CCARGS="$CCARGS -DHAS_PCRE $pcre_cflags" ! AUXLIBS="$AUXLIBS $pcre_libs" ! fi ;; esac --- 290,300 ---- case "$CCARGS" in *-DHAS_PCRE*) ;; *-DNO_PCRE*) ;; ! *) pcre_cflags=`(pcre-config --cflags) 2>/dev/null` && ! pcre_libs=`(pcre-config --libs) 2>/dev/null` && { ! CCARGS="$CCARGS -DHAS_PCRE $pcre_cflags" ! AUXLIBS="$AUXLIBS $pcre_libs" ! } ;; esac diff -cr /tmp/postfix-2.0.1/postfix-install ./postfix-install *** /tmp/postfix-2.0.1/postfix-install Sat Feb 23 08:32:12 2002 --- ./postfix-install Tue Jan 14 12:57:32 2003 *************** *** 191,207 **** exit 1 } - # - # LINUX by default does not synchronously update directories - - # that's dangerous for mail. - # - if [ -f /usr/bin/chattr ] - then - CHATTR="/usr/bin/chattr +S" - else - CHATTR=echo - fi - case `uname -s` in HP-UX*) FMT=cat;; *) FMT=fmt;; --- 191,196 ---- *************** *** 600,606 **** test -z "$owner" || chown $owner $path || exit 1 test -z "$group" || chgrp $group $path || exit 1 chmod $mode $path || exit 1 - $CHATTR $path >/dev/null 2>/dev/null } continue;; [fl]) ;; --- 589,594 ---- diff -cr /tmp/postfix-2.0.1/src/global/dict_proxy.c ./src/global/dict_proxy.c *** /tmp/postfix-2.0.1/src/global/dict_proxy.c Sun Jan 12 11:38:37 2003 --- ./src/global/dict_proxy.c Mon Jan 13 10:31:33 2003 *************** *** 218,223 **** --- 218,224 ---- ATTR_TYPE_STR, MAIL_ATTR_TABLE, dict_proxy->dict.name, ATTR_TYPE_NUM, MAIL_ATTR_FLAGS, dict_proxy->in_flags, ATTR_TYPE_END) != 0 + || vstream_fflush(stream) || attr_scan(stream, ATTR_FLAG_STRICT, ATTR_TYPE_NUM, MAIL_ATTR_STATUS, &status, ATTR_TYPE_NUM, MAIL_ATTR_FLAGS, &server_flags, diff -cr /tmp/postfix-2.0.1/src/smtpd/smtpd.c ./src/smtpd/smtpd.c *** /tmp/postfix-2.0.1/src/smtpd/smtpd.c Sat Dec 21 21:10:54 2002 --- ./src/smtpd/smtpd.c Wed Jan 15 08:28:54 2003 *************** *** 1611,1617 **** */ smtpd_noop_cmds = string_list_init(MATCH_FLAG_NONE, var_smtpd_noop_cmds); verp_clients = namadr_list_init(MATCH_FLAG_NONE, var_verp_clients); ! smtpd_check_init(); debug_peer_init(); if (var_smtpd_sasl_enable) --- 1611,1618 ---- */ smtpd_noop_cmds = string_list_init(MATCH_FLAG_NONE, var_smtpd_noop_cmds); verp_clients = namadr_list_init(MATCH_FLAG_NONE, var_verp_clients); ! if (getuid() == 0 || getuid() == var_owner_uid) ! smtpd_check_init(); debug_peer_init(); if (var_smtpd_sasl_enable) diff -cr /tmp/postfix-2.0.1/src/smtpd/smtpd_check.c ./src/smtpd/smtpd_check.c *** /tmp/postfix-2.0.1/src/smtpd/smtpd_check.c Sun Jan 12 11:16:42 2003 --- ./src/smtpd/smtpd_check.c Mon Jan 13 08:37:39 2003 *************** *** 3202,3211 **** --- 3202,3216 ---- if ((reply->flags & RESOLVE_CLASS_LOCAL) && *var_local_rcpt_maps + /* Generated by bounce, absorbed by qmgr. */ && !MATCH_LEFT(var_double_bounce_sender, CONST_STR(reply->recipient), strlen(var_double_bounce_sender)) + /* Absorbed by qmgr. */ && !MATCH_LEFT(MAIL_ADDR_POSTMASTER, CONST_STR(reply->recipient), strlen(MAIL_ADDR_POSTMASTER)) + /* Generated by bounce. */ + && !MATCH_LEFT(MAIL_ADDR_MAIL_DAEMON, CONST_STR(reply->recipient), + strlen(MAIL_ADDR_MAIL_DAEMON)) && NOMATCH(local_rcpt_maps, CONST_STR(reply->recipient))) return (smtpd_check_reject(state, MAIL_ERROR_BOUNCE, "%d <%s>: User unknown%s", diff -cr /tmp/postfix-2.0.1/src/trivial-rewrite/transport.c ./src/trivial-rewrite/transport.c *** /tmp/postfix-2.0.1/src/trivial-rewrite/transport.c Thu Jan 9 10:06:32 2003 --- ./src/trivial-rewrite/transport.c Tue Jan 14 08:39:23 2003 *************** *** 190,195 **** --- 190,196 ---- #define PARTIAL DICT_FLAG_FIXED if (find_transport_entry(WILDCARD, "", FULL, channel, nexthop)) { + transport_errno = 0; wildcard_channel = channel; wildcard_nexthop = nexthop; if (msg_verbose) diff -cr /tmp/postfix-2.0.1/src/virtual/Makefile.in ./src/virtual/Makefile.in *** /tmp/postfix-2.0.1/src/virtual/Makefile.in Sun Jan 12 12:18:03 2003 --- ./src/virtual/Makefile.in Tue Jan 14 17:09:23 2003 *************** *** 11,17 **** PROG = virtual TESTPROG= INC_DIR = ../../include ! LIBS = ../../lib/libmaster.a ../../lib/libglobal.a ../../lib/libutil.a $(AUXLIBS) .c.o:; $(CC) $(CFLAGS) -c $*.c --- 11,17 ---- PROG = virtual TESTPROG= INC_DIR = ../../include ! LIBS = ../../lib/libmaster.a ../../lib/libglobal.a ../../lib/libutil.a .c.o:; $(CC) $(CFLAGS) -c $*.c