Re: [Exim] "message filter" address

Página Principal
Apagar esta mensagem
Responder a esta mensagem
Autor: Phil Chambers
Data:  
Para: Philip Hazel
CC: exim-users
Assunto: Re: [Exim] "message filter" address
On Tue, 11 Dec 2001 09:35:08 +0000 (GMT) Philip Hazel <ph10@???> wrote:

> On Mon, 10 Dec 2001, Phil Chambers wrote:
>
> > I am completely mystified by something which has just started. I have various
> > conditions in my system filter along the lines of:
> >
> > if $message_body matches "<pattern matching a virus>"
> > then
> > deliver vircheck
> > seen finish
> > endif
> >
> > These have been diverting virus-containing messages so that I can check for
> > false-positives quite successfully for some time. Last week I added a new one for
> > the Badtrans virus and it is producing quite different results!
>
> Please post the actual code in your filter.
>
> >     2001-12-10 01:17:35 vircheck@??? <vircheck@???> D=localuser
> >     defer (-10): <message filter@???> is a bad new address: missing
> >     or malformed local part (expected word or "<")
> >     *** Frozen

>
> "message filter" is the pseudo "parent" of deliveries generated by a
> system filter file. Somehow you seem to have got it made into an new
> address by a smartuser.


The machine involved is the secondary MX system. This system is designed to do the
same verification that the primary system does before accepting a message (so it has
copies of all the aliasing databases, etc.). Having determined that a message
should be accepted it then uses a smartuser director to pass it to an smtp transport
for onward transmission:

localuser:
driver = smartuser
domains = exacuk
no_more
new_address = $original_local_part@$original_domain
transport = hermes_smtp

(I decided to hand the message over to the primary system with the recipient address
just as it was when it arrived at the secondary, hence the form of the new_address.
The intention being to make the log on the primary show the original address, not
the result of the secondary's machinations.)

I fed a message which the filter would catch through Exim with -d9 set. The debug
listing gave the following extract for the director above:

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

directing vircheck@???
ex.ac.uk in "ex.ac.uk"? yes (matched ex.ac.uk)
localuser director has more set FALSE
localuser director called for vircheck@???
localuser director: error for vircheck
message: <message filter@???> is a bad new address: blah blah blah
post-process vircheck@??? (8)
LOG: 0 MAIN
blah blah blah
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>


So it looks as if $original_local_part contains "message filter" rather than the
original local_part! Is this a bug or should I expect it?

Phil.
---------------------------------------
Phil Chambers (postmaster@???)
University of Exeter