summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPhilip Hazel <ph10@hermes.cam.ac.uk>2005-01-04 13:31:41 +0000
committerPhilip Hazel <ph10@hermes.cam.ac.uk>2005-01-04 13:31:41 +0000
commit60dc5e56c3e1a53aa42c0b74a4af3f7a3ad9118c (patch)
tree831020c7b50d05a8c6a5b9cbfde645a6a90d1c59
parent86b8287f4bac50522d7c4ff99429979584944bab (diff)
Data saved for $host_data after a lookup involving a named host list was
corrupted if there was more than one message in an SMTP session.
-rw-r--r--doc/doc-txt/ChangeLog8
-rw-r--r--src/ACKNOWLEDGMENTS5
-rw-r--r--src/src/match.c6
3 files changed, 14 insertions, 5 deletions
diff --git a/doc/doc-txt/ChangeLog b/doc/doc-txt/ChangeLog
index 3e8b8d935..bf214bce7 100644
--- a/doc/doc-txt/ChangeLog
+++ b/doc/doc-txt/ChangeLog
@@ -1,4 +1,4 @@
-$Cambridge: exim/doc/doc-txt/ChangeLog,v 1.62 2005/01/04 11:01:33 ph10 Exp $
+$Cambridge: exim/doc/doc-txt/ChangeLog,v 1.63 2005/01/04 13:31:41 ph10 Exp $
Change log file for Exim from version 4.21
-------------------------------------------
@@ -284,6 +284,12 @@ Exim version 4.50
64. A call to exiwhat cut short delays set up by "delay" modifiers in ACLs.
This has been fixed.
+65. Caching of lookup data for "hosts =" ACL conditions, when a named host list
+ was in use, was not putting the data itself into the right store pool;
+ consequently, it could be overwritten for a subsequent message in the same
+ SMTP connection. (Fix 4.40/11 dealt with the non-cache case, but overlooked
+ the caching.)
+
Exim version 4.43
-----------------
diff --git a/src/ACKNOWLEDGMENTS b/src/ACKNOWLEDGMENTS
index e74132803..379d05a9f 100644
--- a/src/ACKNOWLEDGMENTS
+++ b/src/ACKNOWLEDGMENTS
@@ -1,4 +1,4 @@
-$Cambridge: exim/src/ACKNOWLEDGMENTS,v 1.10 2004/12/21 12:00:59 ph10 Exp $
+$Cambridge: exim/src/ACKNOWLEDGMENTS,v 1.11 2005/01/04 13:31:41 ph10 Exp $
EXIM ACKNOWLEDGEMENTS
@@ -20,7 +20,7 @@ relatively small patches.
Philip Hazel
Lists created: 20 November 2002
-Last updated: 21 December 2004
+Last updated: 04 January 2005
THE OLD LIST
@@ -189,6 +189,7 @@ David Saez Suggested patch for $sender_hostname lookup if needed
Peter Savitch Diagnosis of FPE bug when statvfs() fails on spool
Harald Schueler Patch for dn_expand() failure on truncated data
Heiko Schlichting Diagnosis of intermittent daemon crash bug
+Stephan Schulz Patch for $host_data caching error
Tony Sheen Log files with datestamped names and auto rollover
Martin Sluka Patch for exigrep to include non-message lines
Tamas Tevesz Patch for crypt16() support
diff --git a/src/src/match.c b/src/src/match.c
index 7c30e056c..cd587ee4d 100644
--- a/src/src/match.c
+++ b/src/src/match.c
@@ -1,4 +1,4 @@
-/* $Cambridge: exim/src/src/match.c,v 1.3 2005/01/04 10:00:42 ph10 Exp $ */
+/* $Cambridge: exim/src/src/match.c,v 1.4 2005/01/04 13:31:41 ph10 Exp $ */
/*************************************************
* Exim - an Internet mail transport agent *
@@ -630,9 +630,11 @@ while ((sss = string_nextinlist(&list, &sep, buffer, sizeof(buffer))) != NULL)
store_pool = POOL_PERM;
p = store_get(sizeof(namedlist_cacheblock));
p->key = string_copy(get_check_key(arg, type));
+
+
+ p->data = (*valueptr == NULL)? NULL : string_copy(*valueptr);
store_pool = old_pool;
- p->data = *valueptr;
p->next = nb->cache_data;
nb->cache_data = p;
if (*valueptr != NULL)