[exim] How many times does router run for multiple recipient…

Top Page
Delete this message
Reply to this message
Author: vitas1
Date:  
To: exim-users
Subject: [exim] How many times does router run for multiple recipients?
Hi all.

I want to blackhole some recipients of a message at router level. At ACL
level a whitelist of recipients for this message is built.

So I'm trying to do something like this:

blackholes: 
    domains = +relay_to_domains
    driver = redirect 
    data = :blackhole: 
   # blackhole ONLY those who aren't in whitelist
    condition = ${if 
match_address{$local_part@$domain}{addr1@???:addr2@???:addr3@???}{no}{yes}} 


   # at verification time whitelist doesn't exist
    no_verify


Now suppose a message has multiple recipients and some of them are in
whitelist.

When processing any of the whitelisted recipients router gives me
"...skipped: condition failure". And NO other addresses are then processed
- i.e., message is delivered to all remaining recipients (including
non-whitelisted). There are NO entries in debug log concerning whether
THIS router REALLY processed remaining addresses.

So seems like the first {no} result completely stops the work of the
router.

I tried to use simple conditions (condition = false) and has the same
effect.

So my question is: does router run ONCE for a message that has multiple
recipients or for EVERY recipient separately? Are there some exceptions
for REDIRECT router or for :BLACKHOLE: data particularly? Is my
configuration completely stupid? :-)

Thanks in advance,

Vitas.