[-]
[+]
|
Changed |
postfix.spec
|
|
[-]
[+]
|
Changed |
_service:download_files:postfix-2.11.5.tar.gz/HISTORY
^
|
@@ -17919,7 +17919,7 @@
20120824
- Feature: support for "sendmail -R hdrs|full". Jan Kundrát.
+ Feature: support for "sendmail -R hdrs|full". Jan Kundr?t.
File: sendmail/sendmail.c.
20120902
@@ -19618,3 +19618,49 @@
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.
+
+20150324
+
+ Bugfix (introduced: Postfix 2.6): sender_dependent_relayhost_maps
+ ignored the relayhost setting in the case of a DUNNO lookup
+ result. It would use the recipient domain instead. Viktor
+ Dukhovni. Wietse took the pieces of code that enforce the
+ precedence of a sender-dependent relayhost, the global
+ relayhost, and the recipient domain, and put that code
+ together in once place so that it is easier to maintain.
+ File: trivial-rewrite/resolve.c.
+
+20150330
+
+ Bitrot: prepare for future changes in OpenSSL API. Viktor
+ Dukhovni. File: tls_dane.c.
+
+20150408
+
+ Portability: FreeBSD10 support. Files: makedefs, util/sys_defs.h.
+
+ Incompatibility: specifying "make makefiles" with "CC=command"
+ will no longer override the default WARN setting.
|
[-]
[+]
|
Changed |
_service:download_files:postfix-2.11.5.tar.gz/makedefs
^
|
@@ -158,6 +158,9 @@
;;
FreeBSD.9*) SYSTYPE=FREEBSD9
;;
+ FreeBSD.10*) SYSTYPE=FREEBSD10
+ : ${CC=cc}
+ ;;
DragonFly.*) SYSTYPE=DRAGONFLY
;;
OpenBSD.2*) SYSTYPE=OPENBSD2
@@ -470,7 +473,6 @@
Darwin.*) SYSTYPE=MACOSX
# Use the native compiler by default
: ${CC=cc}
- CCARGS="$CCARGS \$(WARN)"
# Darwin > 1.3 uses awk and flat_namespace
case $RELEASE in
1.[0-3]) AWK=gawk;;
@@ -624,7 +626,7 @@
# een burned once by a compiler that lies about what warnings it
# produces, not taking that chance again.
-: ${CC='gcc $(WARN)'} ${OPT='-O'} ${DEBUG='-g'} ${AWK=awk} \
+: ${CC=gcc} ${OPT='-O'} ${DEBUG='-g'} ${AWK=awk} \
${WARN='-Wall -Wno-comment -Wformat -Wimplicit -Wmissing-prototypes \
-Wparentheses -Wstrict-prototypes -Wswitch -Wuninitialized \
-Wunused -Wno-missing-braces'}
@@ -647,7 +649,7 @@
ARFL = $ARFL
RANLIB = $RANLIB
SYSLIBS = $AUXLIBS $SYSLIBS
-CC = $CC $CCARGS
+CC = $CC $CCARGS \$(WARN)
OPT = $OPT
DEBUG = $DEBUG
AWK = $AWK
|
[-]
[+]
|
Changed |
_service:download_files:postfix-2.11.5.tar.gz/src/cleanup/cleanup_map1n.c
^
|
@@ -139,6 +139,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));
|
[-]
[+]
|
Changed |
_service:download_files:postfix-2.11.5.tar.gz/src/global/mail_version.h
^
|
@@ -20,8 +20,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 "20150412"
+#define MAIL_VERSION_NUMBER "2.11.5"
#ifdef SNAPSHOT
#define MAIL_VERSION_DATE "-" MAIL_RELEASE_DATE
|
[-]
[+]
|
Changed |
_service:download_files:postfix-2.11.5.tar.gz/src/global/tok822_tree.c
^
|
@@ -259,11 +259,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);
|
[-]
[+]
|
Changed |
_service:download_files:postfix-2.11.5.tar.gz/src/postconf/postconf_master.c
^
|
@@ -273,7 +273,7 @@
for (field = PCF_MASTER_FLD_PRIVATE; field <= PCF_MASTER_FLD_CHROOT; field++) {
cp = argv->argv[field];
if (cp[1] != 0 || strchr(pcf_valid_bool_types, *cp) == 0)
- pcf_fix_fatal("invalid %s field \%s\" in \"%s\"",
+ pcf_fix_fatal("invalid %s field \"%s\" in \"%s\"",
pcf_str_field_pattern(field), cp, raw_text);
}
@@ -282,12 +282,12 @@
if (len > 0 && cp[len - 1] == '?')
len--;
if (!(cp[0] == '-' && len == 1) && strspn(cp, "0123456789") != len)
- pcf_fix_fatal("invalid " PCF_MASTER_NAME_WAKEUP " field \%s\" in \"%s\"",
+ pcf_fix_fatal("invalid " PCF_MASTER_NAME_WAKEUP " field \"%s\" in \"%s\"",
cp, raw_text);
cp = argv->argv[PCF_MASTER_FLD_MAXPROC];
if (strcmp("-", cp) != 0 && cp[strspn(cp, "0123456789")] != 0)
- pcf_fix_fatal("invalid " PCF_MASTER_NAME_MAXPROC " field \%s\" in \"%s\"",
+ pcf_fix_fatal("invalid " PCF_MASTER_NAME_MAXPROC " field \"%s\" in \"%s\"",
cp, raw_text);
}
|
[-]
[+]
|
Changed |
_service:download_files:postfix-2.11.5.tar.gz/src/smtp/smtp_tls_policy.c
^
|
@@ -516,9 +516,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);
}
|
[-]
[+]
|
Changed |
_service:download_files:postfix-2.11.5.tar.gz/src/tls/tls_dane.c
^
|
@@ -383,7 +383,7 @@
&& ((md = EVP_get_digestbyname(dane_mdalg)) == 0
|| (mdlen = EVP_MD_size(md)) <= 0
|| mdlen > EVP_MAX_MD_SIZE)) {
- msg_warn("Unimplemented digest algoritm in %s: %s%s%s",
+ msg_warn("Unimplemented digest algorithm in %s: %s%s%s",
VAR_TLS_DANE_DIGESTS, mdalg,
value ? "=" : "", value ? value : "");
return (0);
@@ -1452,7 +1452,7 @@
static int add_akid(X509 *cert, AUTHORITY_KEYID *akid)
{
- ASN1_STRING *id;
+ ASN1_OCTET_STRING *id;
unsigned char c = 0;
int nid = NID_authority_key_identifier;
int ret = 0;
@@ -1464,13 +1464,13 @@
* exempt from any potential (off by default for now in OpenSSL)
* self-signature checks!
*/
- id = (ASN1_STRING *) ((akid && akid->keyid) ? akid->keyid : 0);
- if (id && M_ASN1_STRING_length(id) == 1 && *M_ASN1_STRING_data(id) == c)
+ id = ((akid && akid->keyid) ? akid->keyid : 0);
+ if (id && ASN1_STRING_length(id) == 1 && *ASN1_STRING_data(id) == c)
c = 1;
if ((akid = AUTHORITY_KEYID_new()) != 0
&& (akid->keyid = ASN1_OCTET_STRING_new()) != 0
- && M_ASN1_OCTET_STRING_set(akid->keyid, (void *) &c, 1)
+ && ASN1_OCTET_STRING_set(akid->keyid, (void *) &c, 1)
&& X509_add1_ext_i2d(cert, nid, akid, 0, X509V3_ADD_DEFAULT) > 0)
ret = 1;
if (akid)
|
[-]
[+]
|
Changed |
_service:download_files:postfix-2.11.5.tar.gz/src/trivial-rewrite/resolve.c
^
|
@@ -549,15 +549,20 @@
if (*relay == 0) {
msg_warn("%s: ignoring null lookup result for %s",
rp->snd_relay_maps_name, sender_key);
- relay = "DUNNO";
- }
- vstring_strcpy(nexthop, strcasecmp(relay, "DUNNO") == 0 ?
- rcpt_domain : relay);
+ relay = 0;
+ } else if (strcasecmp(relay, "DUNNO") == 0)
+ relay = 0;
} else if (rp->snd_relay_info
&& rp->snd_relay_info->error != 0) {
msg_warn("%s lookup failure", rp->snd_relay_maps_name);
*flags |= RESOLVE_FLAG_FAIL;
FREE_MEMORY_AND_RETURN;
+ } else {
+ relay = 0;
+ }
+ /* Enforce all the relayhost precedences in one place. */
+ if (relay != 0) {
+ vstring_strcpy(nexthop, relay);
} else if (*RES_PARAM_VALUE(rp->relayhost))
vstring_strcpy(nexthop, RES_PARAM_VALUE(rp->relayhost));
else
|
[-]
[+]
|
Changed |
_service:download_files:postfix-2.11.5.tar.gz/src/util/sys_defs.h
^
|
@@ -25,7 +25,7 @@
*/
#if defined(FREEBSD2) || defined(FREEBSD3) || defined(FREEBSD4) \
|| defined(FREEBSD5) || defined(FREEBSD6) || defined(FREEBSD7) \
- || defined(FREEBSD8) || defined(FREEBSD9) \
+ || defined(FREEBSD8) || defined(FREEBSD9) || defined(FREEBSD10) \
|| defined(BSDI2) || defined(BSDI3) || defined(BSDI4) \
|| defined(OPENBSD2) || defined(OPENBSD3) || defined(OPENBSD4) \
|| defined(OPENBSD5) \
|