[exim] Interaction of errors_to and null sender

Top Page
Delete this message
Reply to this message
Author: Tim Jackson
Date:  
To: exim-users
Subject: [exim] Interaction of errors_to and null sender
Hi,

I'm trying to pass certain messages to a script for processing, but
prevent any script errors being reported to the original sender. (Normal
kind of thing).

I have errors_to set on the relevant router, and have the script producing
some output to simulate an error case. This works perfectly in most cases;
the script runs, the delivery completes and an error message is sent to
the address listed in errors_to containing the usual blurb, that is:

"
... could not be delivered to one or more of its recipients. The following
address(es) failed:

   pipe to |/path/to/script
     generated by example@???


The following text was generated during the delivery attempt:

 ------ pipe to |/path/to/script
        generated by example@??? ------


test output
"

All good so far. However, if the message to be delivered has a null
sender, it seems that the errors_to option is ignored. Instead, the
message is frozen on the queue (with a log message containing something
like "T=address_pipe: return message generated").

It's not a tremendous problem, but it left me a bit mystified for a while
until I worked out what was going on. I've trawled the documentation but
couldn't find any references to this situation. Is it:

a) Intended behaviour? If so, why? (prevent any possibility of mail loops
perhaps?). Can it be over-ridden? In any case, perhaps the documentation
could contain a note about it, if it's not there already? (and if it is,
perhaps have some additional cross-references, because I've managed to
overlook it)

b) Unintended behaviour due to some unexpected interaction?

c) Me being silly?


Thanks,

Tim