On Thu, 9 Jul 1998, David Sheryn wrote:
> Spot on.
OK, I've noted that.
> > That is simpler, but unfortunately not much. The problem is that when a
> > message is deferred, the headers are re-written to the spool file for
> > use at the next delivery attempt, so all this rewriting would be
> > recorded, and if you've rewritten envelope addresses, they will be
> > different next time. Either there has to be some extremely careful
> > documentation of the consequences of all of this, or this rewriting has
> > to be done on a copy of the headers and envelope so that they don't get
> > saved. This is now getting similar to the problem I saw before :-(
>
> You've lost me a little here, as well... :-(
Suppose you have a message addressed to xxxx@??? so we have
Envelope recipient: xxxx@???
To: xxxx@???
Exim routes this address, and finds that the domain a.b.c.d is to be
sent to the host x.y.z. Then it notices rewrite rules on the router
saying
xxxx@??? yyyy@???
so it rewrites the header line to
To: yyyy@???
and it rewrites the envelope sender also. It connects to the host x.y.z
and sends
MAIL FROM:<sender>
RCPT TO:<yyyy@???>
but the far end gives a temporary error (or it never managed to connect,
or whatever) so the message is deferred. On deferral, Exim saves the
current headers and address, so what it saves is
Envelope recipient: yyyy@???
To: yyyy@???
Next time it tries to deliver the message, it is going to be routing the
domain p.q.r.s and not the domain a.b.c.d. This might result in
Something Completely Different.
I suppose one could restrict these new rules to apply only to the
headers of a message, but it sounded to me as though you wanted them to
apply to the envelope as well.
--
Philip Hazel University Computing Service,
P.Hazel@??? New Museums Site, Cambridge CB2 3QG,
ph10@??? (sic) England. Phone: +44 1223 334714
--
*** Exim information can be found at
http://www.exim.org/ ***