From c161b0e5dfaf0bfea30101437d8efb05c19f94d6 Mon Sep 17 00:00:00 2001 From: Wietse Venema Date: Wed, 17 Oct 2007 00:00:00 -0500 Subject: [PATCH] postfix-2.3.13 --- postfix/HISTORY | 30 +++++++++++++++++++++++------- postfix/src/flush/flush.c | 6 ++++++ postfix/src/global/mail_version.h | 4 ++-- postfix/src/smtpd/smtpd_check.c | 2 +- 4 files changed, 32 insertions(+), 10 deletions(-) diff --git a/postfix/HISTORY b/postfix/HISTORY index 0c6876a3c..8c6547b4e 100644 --- a/postfix/HISTORY +++ b/postfix/HISTORY @@ -13064,11 +13064,27 @@ Apologies for any names omitted. 20070730 - Bugfix: when a milter replied with ACCEPT at or before the - first RCPT command, the cleanup server would apply the - non_smtpd_milters setting as if the message was a local - submission. Problem reported by Jukka Salmi. Also, the - cleanup server would get out of sync with the milter when - a milter replied with ACCEPT at the DATA command. Files: - cleanup/cleanup_envelope.c, smtpd/smtpd.c, milter/milters.c. + Bugfix: when a milter replied with ACCEPT at or before the + first RCPT command, the cleanup server would apply the + non_smtpd_milters setting as if the message was a local + submission. Problem reported by Jukka Salmi. Also, the + cleanup server would get out of sync with the milter when + a milter replied with ACCEPT at the DATA command. Files: + cleanup/cleanup_envelope.c, smtpd/smtpd.c, milter/milters.c. Back-port from Postfix 2.4/2.5. + +20070911 + + Bugfix (introduced Postfix 2.2.11): TLS client certificate + with unparsable canonical name caused the SMTP server's + policy client to allocate zero-length memory, triggering + an assertion that it shouldn't do such things. File: + smtpd/smtpd_check.c. Back-port from Postfix 2.4/2.5. + +20070917 + + Workaround: the flush daemon forces an access time update + for the per-destination logfile, to prevent an excessive + rate of delivery attempts when the queue file system is + mounted with "noatime". File: flush/flush.c. Back-port + from Postfix 2.4/2.5. diff --git a/postfix/src/flush/flush.c b/postfix/src/flush/flush.c index 4b47e30a7..276c8e404 100644 --- a/postfix/src/flush/flush.c +++ b/postfix/src/flush/flush.c @@ -147,6 +147,7 @@ #include #include +#include #include #include #include @@ -479,6 +480,11 @@ static int flush_send_path(const char *path, int how) if (count > 0 && ftruncate(vstream_fileno(log), (off_t) 0) < 0) msg_fatal("%s: truncate fast flush logfile %s: %m", myname, path); + /* + * Workaround for noatime mounts. Use futimes() if available. + */ + (void) utimes(VSTREAM_PATH(log), (struct timeval *) 0); + /* * Request delivery and clean up. */ diff --git a/postfix/src/global/mail_version.h b/postfix/src/global/mail_version.h index b35f5d985..24997fdcb 100644 --- a/postfix/src/global/mail_version.h +++ b/postfix/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 "20070731" -#define MAIL_VERSION_NUMBER "2.3.12" +#define MAIL_RELEASE_DATE "20071017" +#define MAIL_VERSION_NUMBER "2.3.13" #ifdef SNAPSHOT # define MAIL_VERSION_DATE "-" MAIL_RELEASE_DATE diff --git a/postfix/src/smtpd/smtpd_check.c b/postfix/src/smtpd/smtpd_check.c index dde160828..92191437e 100644 --- a/postfix/src/smtpd/smtpd_check.c +++ b/postfix/src/smtpd/smtpd_check.c @@ -3302,7 +3302,7 @@ static int check_policy_service(SMTPD_STATE *state, const char *server, coded_CN_buf = 0; \ coded_CN = ""; \ } else { \ - coded_CN_buf = vstring_alloc(strlen(CN)); \ + coded_CN_buf = vstring_alloc(strlen(CN) + 1); \ xtext_quote(coded_CN_buf, CN, ""); \ coded_CN = STR(coded_CN_buf); \ } \