Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/external/ibm-public/postfix/dist Import Postfix 2.11.4. Chan...
details: https://anonhg.NetBSD.org/src/rev/63a8f8c1406d
branches: trunk
changeset: 336245:63a8f8c1406d
user: tron <tron%NetBSD.org@localhost>
date: Sat Feb 21 11:56:30 2015 +0000
description:
Import Postfix 2.11.4. Changes since version 2.11.3:
- Fix a core dump when smtp_policy_maps specifies an invalid TLS level.
- Fix a missing " in \%s\", in postconf(1) fatal error messages, which
violated the C language spec. Reported by Iain Hibbert.
- Stop excessive recursion in the cleanup server while recovering from a
virtual alias expansion loop. Problem found at Two Sigma.
- Stop exponential memory allocation with virtual alias expansion loops.
This came to light after fixing the previous problem.
diffstat:
external/ibm-public/postfix/dist/HISTORY | 23 ++++++++++++
external/ibm-public/postfix/dist/src/cleanup/cleanup_map1n.c | 11 +++++-
external/ibm-public/postfix/dist/src/global/mail_version.h | 6 +-
external/ibm-public/postfix/dist/src/global/tok822_tree.c | 9 ++--
external/ibm-public/postfix/dist/src/smtp/smtp_tls_policy.c | 4 +-
5 files changed, 44 insertions(+), 9 deletions(-)
diffs (121 lines):
diff -r 849d937f7cf4 -r 63a8f8c1406d external/ibm-public/postfix/dist/HISTORY
--- a/external/ibm-public/postfix/dist/HISTORY Sat Feb 21 11:39:05 2015 +0000
+++ b/external/ibm-public/postfix/dist/HISTORY Sat Feb 21 11:56:30 2015 +0000
@@ -19618,3 +19618,26 @@
Cleanup: revert the workaround that places headers inserted
with PREPEND actions or policy requests BELOW Postfix's own
Received: message header. File: smtpd/smtpd.c.
+
+20141025
+
+ Bugfix (introduced: Postfix 2.11): core dump when
+ smtp_policy_maps specifies an invalid TLS level. Viktor
+ Dukhovni. File: smtp/smtp_tls_policy.c.
+
+20150106
+
+ Robustness: don't segfault due to excessive recursion after
+ a faulty configuration runs into the virtual_alias_recursion_limit.
+ File: global/tok822_tree.c.
+
+20150115
+
+ Safety: stop aliasing loops that exponentially increase the
+ address length with each iteration. Back-ported from Postfix
+ 3.0. File: cleanup/cleanup_map1n.c.
+
+20150117
+
+ Cleanup: missing " in \%s\" in postconf(1) fatal error
+ messages. Iain Hibbert. File: postconf/postconf_master.c.
diff -r 849d937f7cf4 -r 63a8f8c1406d external/ibm-public/postfix/dist/src/cleanup/cleanup_map1n.c
--- a/external/ibm-public/postfix/dist/src/cleanup/cleanup_map1n.c Sat Feb 21 11:39:05 2015 +0000
+++ b/external/ibm-public/postfix/dist/src/cleanup/cleanup_map1n.c Sat Feb 21 11:56:30 2015 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: cleanup_map1n.c,v 1.1.1.4 2014/07/06 19:27:49 tron Exp $ */
+/* $NetBSD: cleanup_map1n.c,v 1.1.1.5 2015/02/21 11:56:48 tron Exp $ */
/*++
/* NAME
@@ -141,6 +141,15 @@
if ((lookup = mail_addr_map(maps, STR(state->temp1), propagate)) != 0) {
saved_lhs = mystrdup(argv->argv[arg]);
for (i = 0; i < lookup->argc; i++) {
+ if (strlen(lookup->argv[i]) > var_line_limit) {
+ msg_warn("%s: unreasonable %s result %.300s... -- "
+ "message not accepted, try again later",
+ state->queue_id, maps->title, lookup->argv[i]);
+ state->errs |= CLEANUP_STAT_DEFER;
+ UPDATE(state->reason, "4.6.0 Alias expansion error");
+ UNEXPAND(argv, addr);
+ RETURN(argv);
+ }
unquote_822_local(state->temp1, lookup->argv[i]);
if (i == 0) {
UPDATE(argv->argv[arg], STR(state->temp1));
diff -r 849d937f7cf4 -r 63a8f8c1406d external/ibm-public/postfix/dist/src/global/mail_version.h
--- a/external/ibm-public/postfix/dist/src/global/mail_version.h Sat Feb 21 11:39:05 2015 +0000
+++ b/external/ibm-public/postfix/dist/src/global/mail_version.h Sat Feb 21 11:56:30 2015 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: mail_version.h,v 1.1.1.22 2015/01/24 18:08:25 tron Exp $ */
+/* $NetBSD: mail_version.h,v 1.1.1.23 2015/02/21 11:56:49 tron Exp $ */
#ifndef _MAIL_VERSION_H_INCLUDED_
#define _MAIL_VERSION_H_INCLUDED_
@@ -22,8 +22,8 @@
* Patches change both the patchlevel and the release date. Snapshots have no
* patchlevel; they change the release date only.
*/
-#define MAIL_RELEASE_DATE "20141019"
-#define MAIL_VERSION_NUMBER "2.11.3"
+#define MAIL_RELEASE_DATE "20150208"
+#define MAIL_VERSION_NUMBER "2.11.4"
#ifdef SNAPSHOT
#define MAIL_VERSION_DATE "-" MAIL_RELEASE_DATE
diff -r 849d937f7cf4 -r 63a8f8c1406d external/ibm-public/postfix/dist/src/global/tok822_tree.c
--- a/external/ibm-public/postfix/dist/src/global/tok822_tree.c Sat Feb 21 11:39:05 2015 +0000
+++ b/external/ibm-public/postfix/dist/src/global/tok822_tree.c Sat Feb 21 11:56:30 2015 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: tok822_tree.c,v 1.1.1.1 2009/06/23 10:08:48 tron Exp $ */
+/* $NetBSD: tok822_tree.c,v 1.1.1.2 2015/02/21 11:56:51 tron Exp $ */
/*++
/* NAME
@@ -261,11 +261,12 @@
TOK822 *tok822_free_tree(TOK822 *tp)
{
- if (tp) {
- if (tp->next)
- tok822_free_tree(tp->next);
+ TOK822 *next;
+
+ for (/* void */; tp != 0; tp = next) {
if (tp->head)
tok822_free_tree(tp->head);
+ next = tp->next;
tok822_free(tp);
}
return (0);
diff -r 849d937f7cf4 -r 63a8f8c1406d external/ibm-public/postfix/dist/src/smtp/smtp_tls_policy.c
--- a/external/ibm-public/postfix/dist/src/smtp/smtp_tls_policy.c Sat Feb 21 11:39:05 2015 +0000
+++ b/external/ibm-public/postfix/dist/src/smtp/smtp_tls_policy.c Sat Feb 21 11:56:30 2015 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: smtp_tls_policy.c,v 1.1.1.1 2014/07/06 19:27:56 tron Exp $ */
+/* $NetBSD: smtp_tls_policy.c,v 1.1.1.2 2015/02/21 11:56:56 tron Exp $ */
/*++
/* NAME
@@ -518,9 +518,11 @@
switch (site_level) {
default:
tls->level = site_level;
+ /* FALLTHROUGH */
case TLS_LEV_NOTFOUND:
break;
case TLS_LEV_INVALID:
+ tls->level = site_level;
return ((void *) tls);
}
Home |
Main Index |
Thread Index |
Old Index