fanf2 2005/09/15 17:02:07 BST
Modified files:
exim-doc/doc-txt ChangeLog
exim-src/src/routers dnslookup.c
Log:
A further widen_domains fix for a subtle but common case.
Revision Changes Path
1.233 +3 -0 exim/exim-doc/doc-txt/ChangeLog
1.6 +7 -4 exim/exim-src/src/routers/dnslookup.c
Index: ChangeLog
===================================================================
RCS file: /home/cvs/exim/exim-doc/doc-txt/ChangeLog,v
retrieving revision 1.232
retrieving revision 1.233
diff -u -u -r1.232 -r1.233
--- ChangeLog 15 Sep 2005 09:15:26 -0000 1.232
+++ ChangeLog 15 Sep 2005 16:02:07 -0000 1.233
@@ -1,4 +1,4 @@
-$Cambridge: exim/exim-doc/doc-txt/ChangeLog,v 1.232 2005/09/15 09:15:26 fanf2 Exp $
+$Cambridge: exim/exim-doc/doc-txt/ChangeLog,v 1.233 2005/09/15 16:02:07 fanf2 Exp $
Change log file for Exim from version 4.21
-------------------------------------------
@@ -195,6 +195,9 @@
TF/04 Fix the ratelimit support in exim_fixdb. Patch provided by Brian
Candler <B.Candler@???>.
+
+TF/05 The fix for PH/43 was not completely correct; widen_domains is always
+ OK for addresses that are the result of redirections.
Exim version 4.52
Index: dnslookup.c
===================================================================
RCS file: /home/cvs/exim/exim-src/src/routers/dnslookup.c,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -u -r1.5 -r1.6
--- dnslookup.c 12 Sep 2005 15:09:55 -0000 1.5
+++ dnslookup.c 15 Sep 2005 16:02:07 -0000 1.6
@@ -1,4 +1,4 @@
-/* $Cambridge: exim/exim-src/src/routers/dnslookup.c,v 1.5 2005/09/12 15:09:55 ph10 Exp $ */
+/* $Cambridge: exim/exim-src/src/routers/dnslookup.c,v 1.6 2005/09/15 16:02:07 fanf2 Exp $ */
/*************************************************
* Exim - an Internet mail transport agent *
@@ -185,11 +185,14 @@
verification purposes, but never at transport time, so any header changes that
you might expect as a result of sender domain widening do not occur. Therefore
we do not perform widening when verifying sender addresses; however, widening
-sender addresses is OK if we do not have to rewrite the headers. The
-suppression of widening for sender addresses is silent because it is the normal
-desirable behaviour. */
+sender addresses is OK if we do not have to rewrite the headers. A corollary
+of this is that if the current address is not the original address, then it
+does not appear in the message header so it is also OK to widen. The
+suppression of widening for sender addresses is silent because it is the
+normal desirable behaviour. */
-if (ob->widen_domains != NULL && (verify != v_sender || !ob->rewrite_headers))
+if (ob->widen_domains != NULL &&
+ (verify != v_sender || !ob->rewrite_headers || addr->parent != NULL))
{
listptr = ob->widen_domains;
widen = string_nextinlist(&listptr, &widen_sep, widen_buffer,