ph10 2006/10/24 16:01:26 BST
Modified files:
exim-doc/doc-txt ChangeLog
exim-src ACKNOWLEDGMENTS
exim-src/src spool_in.c
Log:
Fix backwards compatibility bug in named ACL variables.
Revision Changes Path
1.416 +3 -0 exim/exim-doc/doc-txt/ChangeLog
1.61 +2 -2 exim/exim-src/ACKNOWLEDGMENTS
1.18 +5 -2 exim/exim-src/src/spool_in.c
Index: ChangeLog
===================================================================
RCS file: /home/cvs/exim/exim-doc/doc-txt/ChangeLog,v
retrieving revision 1.415
retrieving revision 1.416
diff -u -r1.415 -r1.416
--- ChangeLog 24 Oct 2006 14:32:49 -0000 1.415
+++ ChangeLog 24 Oct 2006 15:01:25 -0000 1.416
@@ -1,4 +1,4 @@
-$Cambridge: exim/exim-doc/doc-txt/ChangeLog,v 1.415 2006/10/24 14:32:49 ph10 Exp $
+$Cambridge: exim/exim-doc/doc-txt/ChangeLog,v 1.416 2006/10/24 15:01:25 ph10 Exp $
Change log file for Exim from version 4.21
-------------------------------------------
@@ -171,6 +171,9 @@
removed from all of them, but trailing whitespace was being removed only
from the last one. Now trailing whitespace is removed from each header
before concatenation.
+
+PH/28 Fixed bug in backwards-compatibility feature of PH/09 (thanks to John
+ Jetmore). It would have mis-read ACL variables from pre-4.61 spool files.
Exim version 4.63
Index: ACKNOWLEDGMENTS
===================================================================
RCS file: /home/cvs/exim/exim-src/ACKNOWLEDGMENTS,v
retrieving revision 1.60
retrieving revision 1.61
diff -u -r1.60 -r1.61
--- ACKNOWLEDGMENTS 23 Oct 2006 13:24:21 -0000 1.60
+++ ACKNOWLEDGMENTS 24 Oct 2006 15:01:26 -0000 1.61
@@ -1,4 +1,4 @@
-$Cambridge: exim/exim-src/ACKNOWLEDGMENTS,v 1.60 2006/10/23 13:24:21 ph10 Exp $
+$Cambridge: exim/exim-src/ACKNOWLEDGMENTS,v 1.61 2006/10/24 15:01:26 ph10 Exp $
EXIM ACKNOWLEDGEMENTS
@@ -20,7 +20,7 @@
Philip Hazel
Lists created: 20 November 2002
-Last updated: 23 October 2006
+Last updated: 24 October 2006
THE OLD LIST
@@ -168,7 +168,7 @@
Pierre Humblet Continued Cygwin support
Peter Ilieve Suggested patch for lookup search bug
John Jetmore Writing and maintaining the 'exipick' utility
- Much helpful testing of the test suite
+ Much helpful testing of the test suite & elsewhere
Patch for -Mset
Bob Johannessen Patch for Sieve envelope tests bug
Patch for negative uid/gid bug
Index: spool_in.c
===================================================================
RCS file: /home/cvs/exim/exim-src/src/spool_in.c,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -r1.17 -r1.18
--- spool_in.c 10 Oct 2006 11:15:12 -0000 1.17
+++ spool_in.c 24 Oct 2006 15:01:26 -0000 1.18
@@ -1,4 +1,4 @@
-/* $Cambridge: exim/exim-src/src/spool_in.c,v 1.17 2006/10/10 11:15:12 ph10 Exp $ */
+/* $Cambridge: exim/exim-src/src/spool_in.c,v 1.18 2006/10/24 15:01:26 ph10 Exp $ */
/*************************************************
* Exim - an Internet mail transport agent *
@@ -436,11 +436,14 @@
else if (Ustrncmp(p, "cl ", 3) == 0)
{
int index, count;
- uschar name[4];
+ uschar name[20]; /* Need plenty of space for %d format */
tree_node *node;
if (sscanf(CS big_buffer + 5, "%d %d", &index, &count) != 2)
goto SPOOL_FORMAT_ERROR;
- (void) string_format(name, 4, "%c%d", (index < 10 ? 'c' : 'm'), index);
+ if (index < 10)
+ (void) string_format(name, sizeof(name), "%c%d", 'c', index);
+ else if (index < 20) /* ignore out-of-range index */
+ (void) string_format(name, sizeof(name), "%c%d", 'm', index - 10);
node = acl_var_create(name);
node->data.ptr = store_get(count + 1);
if (fread(node->data.ptr, 1, count+1, f) < count) goto SPOOL_READ_ERROR;