2
0
mirror of https://github.com/vdukhovni/postfix synced 2025-08-22 09:57:34 +00:00

postfix-2.12-20140709

This commit is contained in:
Wietse Venema 2014-07-10 23:14:26 +10:00 committed by Viktor Dukhovni
parent 1042e00cfd
commit ab5d95ae1d
12 changed files with 73 additions and 12 deletions

View File

@ -20122,3 +20122,17 @@ Apologies for any names omitted.
action when giving up. The defaults are backwards-compatible.
Files: global/mail_params.h, mantools/postlink,
proto/postconf.proto, smtpd/smtpd.c, smtpd/smtpd_check.c.
20140708
Bugfix (introduced 20140701): did not restore jumpbuf
while evaluatingsmtpd_policy_service_default_action.
Viktor Dukhovni. File: smtpd/smtpd_check.c.
20140709
Cleanup: bitrot in unused function. File: global/defer.c.
Cleanup: add SYSLIBS minus static libraries while building
Postfix shared-library objects. Files: makedefs, util/Makefile.in,
global/Makefile.in, dns/Makefile.in, master/Makefile.in/.

View File

@ -41,6 +41,26 @@ Maintainers may also benefit from the makedefs documentation
(mantools/srctoman - makedefs | nroff -man | less) with information
about build options that are not described in the INSTALL instructions.
Major changes with snapshot 20140703
====================================
This release introduces three new configuration parameters that
control error recovery for failed SMTPD policy requests.
* smtpd_policy_service_default_action (default: 451 4.3.5 Server
configuration problem): The default action when an SMTPD policy
service request fails.
* smtpd_policy_service_try_limit (default: 2): The maximal number
of attempts to send an SMTPD policy service request before
giving up. This must be a number greater than zero.
* smtpd_policy_service_retry_delay (default: 1s): The delay between
attempts to resend a failed SMTPD policy service request. This
must be a number greater than zero.
See postconf(5) for details and limitations.
Incompatible changes with snapshot 20140701
===========================================

View File

@ -8,14 +8,18 @@ Wish list:
Things to do after the stable release:
Document and test restriction_classes example for
smtpd_policy_service_default_action.
Don't accept AUTH or other features that are not announced
in the EHLO response.
Per-Milter error action.
Suggested at Mailserver conference: Postscreen RDNS-based
reputation (but this introduces dependency on random DNS
servers).
reputation (but this makes postscreen performance highly
unpredicable because it introduces a dependency on random
DNS servers).
Discourage the use of "after 220" tests in POSTSCREEN_README
and the documentation of individual parameter settings.

View File

@ -926,6 +926,7 @@ no|"")
SHLIB_CFLAGS=
SHLIB_SUFFIX=
SHLIB_LD=:
SHLIB_SYSLIBS=
SHLIB_RPATH=
SHLIB_ENV=
LIB_PREFIX=
@ -984,6 +985,21 @@ AUXLIBS_$name = \$AUXLIBS_$name\""
done;;
esac
# Remove static libraries from SYSLIBS when building shared objects,
# Can't use the shell "case" patterns to detect names ending in *.a.
case "$shared" in
yes) SHLIB_SYSLIBS=`${AWK} '
BEGIN { wc = split("'"$SYSLIBS"'", words)
for (n = 1; n <= wc; n++)
if (words[n] !~ /\.a$/)
printf(" %s", words[n])
}
'`
esac
# Finally...
sed 's/ */ /g' <<EOF
# System-dependent settings and compiler/linker overrides.
SYSTYPE = $SYSTYPE
@ -1009,6 +1025,7 @@ SHLIB_CFLAGS = $SHLIB_CFLAGS
SHLIB_DIR = $shlib_directory
SHLIB_ENV = $SHLIB_ENV
SHLIB_LD = $SHLIB_LD
SHLIB_SYSLIBS = $SHLIB_SYSLIBS
SHLIB_RPATH = $SHLIB_RPATH
# Switch between dynamicmaps.cf plugins and hard-linked databases.
NON_PLUGIN_MAP_OBJ = $NON_PLUGIN_MAP_OBJ

View File

@ -33,7 +33,7 @@ root_tests:
$(LIB): $(OBJS)
$(AR) $(ARFL) $(LIB) $?
$(RANLIB) $(LIB)
$(SHLIB_LD) -o $(LIB) $(OBJS)
$(SHLIB_LD) -o $(LIB) $(OBJS) $(SHLIB_SYSLIBS)
$(LIB_DIR)/$(LIB): $(LIB)
cp $(LIB) $(LIB_DIR)

View File

@ -138,7 +138,7 @@ test: $(TESTPROG)
$(LIB): $(OBJS)
$(AR) $(ARFL) $(LIB) $?
$(RANLIB) $(LIB)
$(SHLIB_LD) -o $(LIB) $(OBJS)
$(SHLIB_LD) -o $(LIB) $(OBJS) $(SHLIB_SYSLIBS)
$(LIB_DIR)/$(LIB): $(LIB)
cp $(LIB) $(LIB_DIR)

View File

@ -24,10 +24,12 @@
/* const char *dsn_envid;
/* int dsn_ret;
/*
/* int defer_warn(flags, queue, id, sender, dsn_envid, dsn_ret)
/* int defer_warn(flags, queue, id, encoding, sender,
/* dsn_envid, dsn_ret)
/* int flags;
/* const char *queue;
/* const char *id;
/* const char *encoding;
/* const char *sender;
/* const char *dsn_envid;
/* int dsn_ret;
@ -312,13 +314,15 @@ int defer_flush(int flags, const char *queue, const char *id,
* do not flush the log */
int defer_warn(int flags, const char *queue, const char *id,
const char *sender, const char *envid, int dsn_ret)
const char *encoding, const char *sender,
const char *envid, int dsn_ret)
{
if (mail_command_client(MAIL_CLASS_PRIVATE, var_defer_service,
ATTR_TYPE_INT, MAIL_ATTR_NREQ, BOUNCE_CMD_WARN,
ATTR_TYPE_INT, MAIL_ATTR_FLAGS, flags,
ATTR_TYPE_STR, MAIL_ATTR_QUEUE, queue,
ATTR_TYPE_STR, MAIL_ATTR_QUEUEID, id,
ATTR_TYPE_STR, MAIL_ATTR_ENCODING, encoding,
ATTR_TYPE_STR, MAIL_ATTR_SENDER, sender,
ATTR_TYPE_STR, MAIL_ATTR_DSN_ENVID, envid,
ATTR_TYPE_INT, MAIL_ATTR_DSN_RET, dsn_ret,

View File

@ -24,7 +24,7 @@ extern int defer_append(int, const char *, MSG_STATS *, RECIPIENT *,
extern int defer_flush(int, const char *, const char *, const char *,
const char *, const char *, int);
extern int defer_warn(int, const char *, const char *, const char *,
const char *, int);
const char *, const char *, int);
extern int defer_one(int, const char *, const char *, const char *,
const char *, const char *,
int, MSG_STATS *, RECIPIENT *,

View File

@ -20,7 +20,7 @@
* Patches change both the patchlevel and the release date. Snapshots have no
* patchlevel; they change the release date only.
*/
#define MAIL_RELEASE_DATE "20140703"
#define MAIL_RELEASE_DATE "20140709"
#define MAIL_VERSION_NUMBER "2.12"
#ifdef SNAPSHOT

View File

@ -44,7 +44,7 @@ root_tests:
$(LIB): $(LIB_OBJ)
$(AR) $(ARFL) $(LIB) $?
$(RANLIB) $(LIB)
$(SHLIB_LD) -o $(LIB) $(LIB_OBJ)
$(SHLIB_LD) -o $(LIB) $(LIB_OBJ) $(SHLIB_SYSLIBS)
$(LIB_DIR)/$(LIB): $(LIB)
cp $(LIB) $(LIB_DIR)/$(LIB)

View File

@ -3727,6 +3727,8 @@ static int check_policy_service(SMTPD_STATE *state, const char *server,
"policy query", reply_name,
reply_class, def_acl);
nesting_level -= 1;
memcpy(ADDROF(smtpd_check_buf), ADDROF(savebuf),
sizeof(smtpd_check_buf));
} else {
/*

View File

@ -143,7 +143,7 @@ test: $(TESTPROG)
$(LIB): $(OBJS)
$(AR) $(ARFL) $(LIB) $?
$(RANLIB) $(LIB)
$(SHLIB_LD) -o $(LIB) $(OBJS)
$(SHLIB_LD) -o $(LIB) $(OBJS) $(SHLIB_SYSLIBS)
$(LIB_DIR)/$(LIB): $(LIB)
cp $(LIB) $(LIB_DIR)