Set a TERM handler to terminate properly if running as PID 1
[users/heiko/exim.git] / doc / doc-txt / ChangeLog
index 988c509bbef7646ea5d2df1314bac5641e16ed7d..459ffe11a2e38b39119f60662909ae6050310467 100644 (file)
@@ -8,6 +8,13 @@ options, and new features, see the NewStuff file next to this ChangeLog.
 Since Exim version 4.90
 -----------------------
 
+GF/01 DEFER rather than ERROR on redis cluster MOVED response.
+     When redis_servers is set to a list of > 1 element, and the Redis servers
+     in that list are in cluster configuration, convert the REDIS_REPLY_ERROR
+     case of MOVED into a DEFER case instead, thus moving the query onto the
+     next server in the list. For a cluster of N elements, all N servers must
+     be defined in redis_servers.
+
 JH/01 Replace the store_release() internal interface with store_newblock(),
       which internalises the check required to safely use the old one, plus
       the allocate and data copy operations duplicated in both (!) of the
@@ -106,6 +113,61 @@ JH/19 Speed up macro lookups during configuration file read, by skipping non-
 JH/20 DANE support moved from Experimental to mainline.  The Makefile control
       for the build is renamed.
 
+JH/21 Fix memory leak during multi-message connections using STARTTLS.  A buffer
+      was allocated for every new TLS startup, meaning one per message.  Fix
+      by only allocating once (OpenSSL) or freeing on TLS-close (GnuTLS).
+
+JH/22 Bug 2236: When a DKIM verification result is overridden by ACL, DMARC
+      reported the original.  Fix to report (as far as possible) the ACL
+      result replacing the original.
+
+JH/23 Fix memory leak during multi-message connections using STARTTLS under
+      OpenSSL.  Certificate information is loaded for every new TLS startup,
+      and the resources needed to be freed.
+
+JH/24 Bug 2242: Fix exim_dbmbuild to permit directoryless filenames.
+
+JH/25 Fix utf8_downconvert propagation through a redirect router.  Previously it
+      was not propagated.
+
+JH/26 Bug 2253: For logging delivery lines under PRDR, append the overall
+      DATA response info to the (existing) per-recipient response info for
+      the "C=" log element.  It can have useful tracking info from the
+      destination system.  Patch from Simon Arlott.
+
+JH/27 Bug 2251: Fix ldap lookups that return a single attribute having zero-
+      length value.  Previously this would segfault.
+
+HS/02 Support Avast multiline protoocol, this allows passing flags to
+      newer versions of the scanner.
+
+JH/28 Ensure that variables possibly set during message acceptance are marked
+      dead before release of memory in the daemon loop.  This stops complaints
+      about them when the debug_store option is enabled.  Discovered specifically
+      for sender_rate_period, but applies to a whole set of variables.
+      Do the same for the queue-runner loop, for variables set from spool
+      message files.  Do the same for the SMTP per-message loop, for certain
+      variables indirectly set in ACL operations.
+
+JH/29 Bug 2250: Fix a longstanding bug in heavily-pipelined SMTP input (such
+      as a multi-recipient message from a mailinglist manager).  The coding had
+      an arbitrary cutoff number of characters while checking for more input;
+      enforced by writing a NUL into the buffer.  This corrupted long / fast
+      input.   The problem was exposed more widely when more pipelineing of SMTP
+      responses was introduced, and one Exim system was feeding another.
+      The symptom is log complaints of SMTP syntax error (NUL chars) on the
+      receiving system, and refused recipients seen by the sending system
+      (propating to people being dropped from mailing lists).
+      Discovered and pinpointed by David Carter.
+
+JH/30 The (EXPERIMENTAL_DMARC) variable $dmarc_ar_header is withdrawn, being
+      replaced by the ${authresults } expansion.
+
+JH/31 Bug 2257: Fix pipe transport to not use a socket-only syscall.
+
+HS/03 Set a handler for SIGTERM and call exit(3) if running as PID 1. This
+      allows proper process termination in container environments.
+
 
 Exim version 4.90
 -----------------