Re: [exim] Using $authenticated_id in router

Startseite
Nachricht löschen
Nachricht beantworten
Autor: Peter Velan
Datum:  
To: exim-users
Betreff: Re: [exim] Using $authenticated_id in router
at 2006-05-31 17:40 Philip Hazel wrote:
> On Wed, 31 May 2006, Peter Velan wrote:
>
>> rr_ocopy:
>> driver = accept
>> transport = tt_ocopy
>> domains = ! +local_domains
>> condition = $authenticated_id
>> unseen
>>
>> should perform following task: create a copy of any outbound mail. It
>> operates perfectly:
>>
>> Now, if I'm injecting messages by a local process, like:
>>
>> <= <> U=peter P=local S=1234 from <> for extern@???
>>
>> then, above router does not triggers.
>
> Have you tried running with debugging (-d) to see how Exim is reacting?
> Use -d+expand to get even more details of expansions (i.e. including
> variable substitutions).


Will do, see below.

If message is injected by perlscript (its assembled using Perl's
MIME::Entity package), first exim mainlog line reads:

<= <> U=peter P=local S=1234 from <> for extern@???

Entering simillar message from command line

# cat in | /usr/sbin/exim4 -bs -d+expand 2&>xx

gives this first exim mainlog line:

<= <> U=root P=local-esmtp S=1234 from <> for extern@???

The only difference seems to be the protocol used ("P=local" /
"P=local-esmtp").

But, in both cases variable "$authenticated_id is not set:

-- from debug log (of command line injected message) --

expanding: $authenticated_id
result:
rr_ocopy router skipped: condition failure

It seems, I have misunderstood the description of $authenticated_id in
exim spec.

But to get the job done, the question remains: How could I modify

condition = $authenticated

to make this condition true if mail comes from an authenticated user OR
from a local process?

Thanks for your patience,
Peter