[exim] Filtering routers loop

Top Page
Delete this message
Reply to this message
Author: Christian Gregoire
Date:  
To: exim-users
Subject: [exim] Filtering routers loop
Hi,

I have 2 routers to filter incoming messages using Spamassassin and Commtouch. When an email has gone once through both, and despite the tests on $received_protocol, it is processed over and over again by those routers, till Exim kills the loop.

Here is the code (for debugging purpose, I use a simple filter command, filter.sh, that simply outputs its input data) :

### routers

router_ct:
  driver = accept
  condition = ${if and {\
                        {custom MYSQL lookup}\
                        {!eq{$received_protocol}{sa-scanned-ok}}\
                        {!eq{$received_protocol}{ct-scanned-ok}}\
                       }\
                    {1}{0}}
  transport = transport_ct


router_sa:
  driver = accept
  condition = ${if and {\
                        {custom MYSQL lookup}\
                        {!eq{$received_protocol}{sa-scanned-ok}}\
                        {!eq{$received_protocol}{ct-scanned-ok}}\
                       }\
                    {1}{0}}
  transport = transport_sa
  no_verify


### transports

transport_sa:
driver = pipe
command = /usr/local/exim/bin/exim -oMr sa-scanned-ok -bS
use_bsmtp = true
transport_filter = /usr/local/bin/filtre.sh
home_directory = "/tmp"
current_directory = "/tmp"
log_output = true
return_fail_output = true
return_path_add = false

transport_ct:
driver = pipe
command = /usr/local/exim/bin/exim -oMr ct-scanned-ok -bS
use_bsmtp = true
transport_filter = /usr/local/bin/filtre.sh
home_directory = "/tmp"
current_directory = "/tmp"
log_output = true
return_fail_output = true
return_path_add = false

### log


Apr 27 14:24:58 webmail-2 exim[27839]: 1O6jqJ-0007Ev-6s => christian
<christian@???> R=router_ct T=transport_ct
Apr 27 14:24:58 webmail-2 exim[27831]: 1O6jqI-0007Ed-8F => christian
<christian@???> R=router_sa T=transport_sa
Apr 27 14:24:58 webmail-2 exim[27813]: 1O6jqI-0007EW-7p => christian
<christian@???> R=router_ct T=transport_ct
Apr 27 14:24:58 webmail-2 exim[27806]: 1O6jqH-0007EL-9U => christian
<christian@???> R=router_sa T=transport_sa
Apr 27 14:24:58 webmail-2 exim[27793]: 1O6jqH-0007EC-98 => christian
<christian@???> R=router_ct T=transport_ct
Apr 27 14:24:58 webmail-2 exim[27786]: 1O6jqH-0007E6-7K => christian
<christian@???> R=router_sa T=transport_sa
Apr 27 14:24:58 webmail-2 exim[27779]: 1O6jqH-0007E0-6z => christian
<christian@???> R=router_ct T=transport_ct
......


Anyone has an idea of what's wrong in my configuration ?


Thanks.

Christian