The "spam" ACL condition code contained a sscanf() call with a %s
[exim.git] / doc / doc-txt / ChangeLog
index 4a8d41d6657c8427580dfa9c08c449d4098540d0..4272704997bcbf174be14ab17cd38656de1cb265 100644 (file)
@@ -1,8 +1,41 @@
-$Cambridge: exim/doc/doc-txt/ChangeLog,v 1.502 2007/04/13 15:13:47 ph10 Exp $
+$Cambridge: exim/doc/doc-txt/ChangeLog,v 1.508 2007/05/14 18:56:25 magnus Exp $
 
 Change log file for Exim from version 4.21
 -------------------------------------------
 
+Exim version 4.68
+-----------------
+
+PH/01 Another patch from the Sieve maintainer.
+
+PH/02 When an IPv6 address is converted to a string for single-key lookup
+      in an address list (e.g. for an item such as "net24-dbm;/net/works"),
+      dots are used instead of colons so that keys in lsearch files need not
+      contain colons. This was done some time before quoting was made available
+      in lsearch files. However, iplsearch files do require colons in IPv6 keys
+      (notated using the quote facility) so as to distinguish them from IPv4
+      keys. This meant that lookups for IP addresses in host lists did not work
+      for iplsearch lookups.
+
+      This has been fixed by arranging for IPv6 addresses to be expressed with
+      colons if the lookup type is iplsearch. This is not incompatible, because
+      previously such lookups could never work.
+
+      The situation is now rather anomolous, since one *can* have colons in
+      ordinary lsearch keys. However, making the change in all cases is
+      incompatible and would probably break a number of configurations.
+
+TK/01 Change PRVS address formatting scheme to reflect latests BATV draft
+      version.
+
+MH/01 The "spam" ACL condition code contained a sscanf() call with a %s
+      conversion specification without a maximum field width, thereby enabling
+      a rogue spamd server to cause a buffer overflow. While nobody in their
+      right mind would setup Exim to query an untrusted spamd server, an
+      attacker that gains access to a server running spamd could potentially
+      exploit this vulnerability to run arbitrary code as the Exim user.
+
+
 Exim version 4.67
 -----------------
 
@@ -203,14 +236,19 @@ SC/03 Eximstats - V1.58 Fix to get <> and blackhole to show in edomain tables.
 PH/43 Yet another patch from the Sieve maintainer.
 
 PH/44 I found a way to check for a TCP/IP connection going away before sending
-      the response to the final '.' that terminates a message. At this time,
-      there should not be any pending input - the client should be waiting for
-      the response. Therefore, a select() can be used: if it shows that the
-      input is "ready", there is either input waiting, or the socket has been
-      closed. Both cases are errors. (It's a bit more complicated than this
-      because of buffering, but that's the essence of it.) Previously, Exim
+      the response to the final '.' that terminates a message, but only in the
+      case where the client has not sent further data following the '.'
+      (unfortunately, this is allowed). However, in many cases there won't be
+      any further data because there won't be any more messages to send. A call
+      to select() can be used: if it shows that the input is "ready", there is
+      either input waiting, or the socket has been closed. An attempt to read
+      the next input character can distinguish the two cases. Previously, Exim
       would have sent an OK response which the client would never have see.
-      This could lead to message repetition. This fix should cure that.
+      This could lead to message repetition. This fix should cure that, at
+      least in a lot of common cases.
+
+PH/45 Do not advertise STARTTLS in response to HELP unless it would be
+      advertised in response to EHLO.
 
 
 Exim version 4.66