On Fri, 29 Apr 2005, Marian Eichholz wrote:
> Thus, a typical mail could read like
>
> [...]
> Delivered-To: postmaster@???
> Delivered-To: postmaster@???
> Delivered-To: marian.eichholz@???
> [...]
>
> (taken from an exim 4.43 delivery)
>
> In recent mails, there is only the one line present:
>
> Delivered-To: marian.eichholz@???
I've looked into this. I need more information to be absolutely sure,
but I think the difference is related to duplicate addresses. It is true
that the handling of duplicates changed in 4.50, but I cannot see how
that could have affected the handling of "header_add". The only
difference is that duplicates are detected and discarded later in the
routing process.
Question: What was the envelope for the message quoted above? If there
was a single recipient "postmaster@???" that was redirected to
"postmaster@???" that was then redirected to
"marian.eichholz@???", I would expect you to see those headers
in both 4.43 and 4.5x.
If, on the other hand, the message had three recipient addresses, two of
which were aliased to "marian.eichholz@???", I would expect to
see just the one Delivered-To: line, again the same in both releases.
> Furthermore, in a test session debugging output, I find
> three references to the added header lines, but only one
> line in the actual delivered mail:
>
> Of course, we run 4.51 :-)
>
> 13:47:14 27307 added header line(s):
> 13:47:14 27307 Delivered-To: marian.eichholz@???
> --
> 13:47:14 27308 added header line(s):
> 13:47:14 27308 Delivered-To: postmaster@???
> --
> 13:47:14 27320 added header line(s):
> 13:47:14 27320 Delivered-To: postmaster@???
Please look further at the debug output. Does it say "duplicate address
discarded" later on for two of them? I expect that it does.
This problem raises an issue that I had not thought of. Discarding a
duplicate address discards any headers that have been added to it. This,
I believe was true in 4.43 as well as in 4.50. Thinking about this,
though, I cannot think of anything else that can be done.
For your particular example, note that if you set "envelope_to_add" on
the transport, it will record all the original envelope recipient
addresses (including those that led to duplicates).
I want to get 4.51 released as soon as possible. I think this issue is
not one that I can do anything about quickly, so it will have to wait
and be thought about, I'm afraid.
Philip
--
Philip Hazel University of Cambridge Computing Service,
ph10@??? Cambridge, England. Phone: +44 1223 334714.