[SA-exim] Re: Bug#246715: sa-exim: network checks are failing because headers are incomplete

Tim Jackson lists at timj.co.uk
Thu May 6 09:01:47 PDT 2004


Hi Marc, on Wed, 5 May 2004 19:21:53 -0700 you wrote:

> On Fri, Apr 30, 2004 at 07:06:31PM +0200, Sander Smeenk wrote:
> > Someone else wrote:
> > > I discovered that the top Recieved: header (the one that is added by
> > > Exim on my machine) is not being sent to spamc.
> > Well, I remember something similar being reported recently about
> > Exiscan on the exim4 mailinglist. Hmm. It could be...
> I got a report that Exim 4.32 was modified to not send the last received
> line to local_scan.
> I have no idea why and it really sucks as far as plugins are concerned.

The relevant ChangeLog entry (4.31) which explains the reasoning is:

"66. The generation of the Received: header has been moved from the time
that a message starts to be received, to the time that it finishes. The
timestamp in the Received: header should now be very close to that of the
<= log line. There are two side-effects of this change:

(a) If a message is rejected by a DATA or non-SMTP ACL or local_scan(),
the logged header lines no longer include the local Received: line,
because it has not yet been created. The same applies to a copy of
the message that is returned to a non-SMTP sender when a message is
rejected.

(b) When a filter file is tested using -bf, no additional Received:
header is added to the test message. After some thought, I decided that
this is a bug fix. This change does not affect the value of $received_for.
It is still set after address rewriting, but before local_scan() is
called."

I can see the reasoning here (though that's not to say it was necessarily
a good change), but it's unfortunate that the knock-on effect on
Exiscan/SA-Exim wasn't predicted.

Tom gets round it in Exiscan by generating his own temporary "fake"
Received header before passing the mail to SA.


Tim



More information about the SA-Exim mailing list