Remove limit on remove_headers item size. Bug 1533
authorJeremy Harris <jgh146exb@wizmail.org>
Sun, 5 Oct 2014 20:31:20 +0000 (21:31 +0100)
committerJeremy Harris <jgh146exb@wizmail.org>
Sun, 5 Oct 2014 20:40:50 +0000 (21:40 +0100)
doc/doc-txt/ChangeLog
src/src/transport.c

index 76ecc206ce098138b0a4719b3d223714b312fd05..0b03894b2f1651d482413936b42db7f729df1d3e 100644 (file)
@@ -44,6 +44,11 @@ JH/05 Fix results-pipe from transport process.  Several recipients, combined
       to notice due to the introduction of conection certificate information,
       the item size being so much larger.  Found and fixed by Wolfgang Breyha.
 
       to notice due to the introduction of conection certificate information,
       the item size being so much larger.  Found and fixed by Wolfgang Breyha.
 
+JH/06 Bug 1533: Fix truncation of items in headers_remove lists.  A fixed
+      size buffer was used, resulting in syntax errors when an expansion
+      exceeded it.
+
+
 Exim version 4.84
 -----------------
 TL/01 Bugzilla 1506: Re-add a 'return NULL' to silence complaints from static
 Exim version 4.84
 -----------------
 TL/01 Bugzilla 1506: Re-add a 'return NULL' to silence complaints from static
index 31437b1465315decfe13a7a3f4eca846124f08d3..15c30bf042007e867804ead27218eba5337da843 100644 (file)
@@ -643,8 +643,7 @@ for (h = header_list; h != NULL; h = h->next) if (h->type != htype_old)
       {
       int sep = ':';         /* This is specified as a colon-separated list */
       uschar *s, *ss;
       {
       int sep = ':';         /* This is specified as a colon-separated list */
       uschar *s, *ss;
-      uschar buffer[128];
-      while ((s = string_nextinlist(&list, &sep, buffer, sizeof(buffer))))
+      while ((s = string_nextinlist(&list, &sep, NULL, 0)))
        {
        int len;
 
        {
        int len;