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,
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" ]
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
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;;
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]) ;;
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,
* 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;
/*
*/
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)
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",
#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)
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