From: Wietse Venema Date: Wed, 15 Jan 2003 05:00:00 +0000 (-0500) Subject: postfix-2.0.2 X-Git-Tag: v2.0.2^0 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=4e639f738ffc45413634801148ed62139d96160e;p=thirdparty%2Fpostfix.git postfix-2.0.2 --- diff --git a/postfix/HISTORY b/postfix/HISTORY index e139cdbff..786f0e0fa 100644 --- a/postfix/HISTORY +++ b/postfix/HISTORY @@ -7546,6 +7546,38 @@ Apologies for any names omitted. 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 --git a/postfix/conf/post-install b/postfix/conf/post-install index 4e1d23de9..17ce53a13 100644 --- a/postfix/conf/post-install +++ b/postfix/conf/post-install @@ -426,7 +426,6 @@ test -n "$create" && { 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" ] diff --git a/postfix/makedefs b/postfix/makedefs index b63eaf5ef..37cf8d989 100644 --- a/postfix/makedefs +++ b/postfix/makedefs @@ -290,13 +290,11 @@ esac 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 + *) 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 --git a/postfix/postfix-install b/postfix/postfix-install index 964dcdacb..eb6a3c68a 100644 --- a/postfix/postfix-install +++ b/postfix/postfix-install @@ -191,17 +191,6 @@ test -x bin/postconf || { 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;; @@ -600,7 +589,6 @@ do 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]) ;; diff --git a/postfix/src/global/dict_proxy.c b/postfix/src/global/dict_proxy.c index 58552dfaa..a60d0deb5 100644 --- a/postfix/src/global/dict_proxy.c +++ b/postfix/src/global/dict_proxy.c @@ -218,6 +218,7 @@ DICT *dict_proxy_open(const char *map, int open_flags, int dict_flags) 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 --git a/postfix/src/global/mail_version.h b/postfix/src/global/mail_version.h index 44a33af4b..5982fcd2e 100644 --- a/postfix/src/global/mail_version.h +++ b/postfix/src/global/mail_version.h @@ -20,10 +20,10 @@ * 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 MAIL_RELEASE_DATE "20030115" #define VAR_MAIL_VERSION "mail_version" -#define DEF_MAIL_VERSION "2.0.1" +#define DEF_MAIL_VERSION "2.0.2" extern char *var_mail_version; /* diff --git a/postfix/src/smtpd/smtpd.c b/postfix/src/smtpd/smtpd.c index 3d4d294db..67d70a766 100644 --- a/postfix/src/smtpd/smtpd.c +++ b/postfix/src/smtpd/smtpd.c @@ -1611,7 +1611,8 @@ static void pre_jail_init(char *unused_name, char **unused_argv) */ 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(); + if (getuid() == 0 || getuid() == var_owner_uid) + smtpd_check_init(); debug_peer_init(); if (var_smtpd_sasl_enable) diff --git a/postfix/src/smtpd/smtpd_check.c b/postfix/src/smtpd/smtpd_check.c index e39fc5679..990e3e236 100644 --- a/postfix/src/smtpd/smtpd_check.c +++ b/postfix/src/smtpd/smtpd_check.c @@ -3202,10 +3202,15 @@ static int check_rcpt_maps(SMTPD_STATE *state, const char *recipient) 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 --git a/postfix/src/trivial-rewrite/transport.c b/postfix/src/trivial-rewrite/transport.c index 28abcb63a..3c0cfc8a3 100644 --- a/postfix/src/trivial-rewrite/transport.c +++ b/postfix/src/trivial-rewrite/transport.c @@ -190,6 +190,7 @@ void transport_wildcard_init(void) #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 --git a/postfix/src/virtual/Makefile.in b/postfix/src/virtual/Makefile.in index da2dc414b..384cee5cc 100644 --- a/postfix/src/virtual/Makefile.in +++ b/postfix/src/virtual/Makefile.in @@ -11,7 +11,7 @@ CFLAGS = $(DEBUG) $(OPT) $(DEFS) PROG = virtual TESTPROG= INC_DIR = ../../include -LIBS = ../../lib/libmaster.a ../../lib/libglobal.a ../../lib/libutil.a $(AUXLIBS) +LIBS = ../../lib/libmaster.a ../../lib/libglobal.a ../../lib/libutil.a .c.o:; $(CC) $(CFLAGS) -c $*.c