sherin
sherin

Reputation: 355

Exim router configuration for fail

I have an exim router configuration for suspended account check. I use a perl lookup for verification for suspeded accounts and the perl function works fine.

The issue is , exim still deliver the message without failure. The router settings as follows,

  suspendedcheck:
    # check if sending user is suspened
    driver = redirect
    domains = +local_domains : $primary_hostname       
    condition = ${if eq{${perl{is_suspended}{$domain_data}{$local_part}}}{yes}{no}} 
    allow_fail 
    allow_defer 
    allow_freeze  
    data = :fail: Suspended account    
    no_more  

The exim log is as follows,

2021-09-16 02:39:25 exim 4.94.2 daemon started: pid=612425, -q30m, listening for SMTP on port 25 (IPv6 and IPv4) port 587 (IPv6 and IPv4) and for SMTPS on port 465 (IPv6 and IPv4)
2021-09-16 02:39:27 1mQnrb-002ZKO-J5 <= [email protected] U=foo P=local S=394 T="Test mail" from <[email protected]> for [email protected]
2021-09-16 02:39:27 1mQnrb-002ZKO-J5 Recipient account is suspened : dreamcatcher
2021-09-16 02:39:27 1mQnrb-002ZKO-J5 is suspend  : yes
2021-09-16 02:39:28 1mQnrb-002ZKO-J5 => dreamcatcher <[email protected]> F=<[email protected]> R=localuser T=dovecot_delivery S=531 C="250 2.0.0 <[email protected]> qN8eNs8QQ2ESWAkAc3UdAg Saved"
2021-09-16 02:39:28 1mQnrb-002ZKO-J5 Completed

This router is supposed to faile, but it is still passing to localuser and the transport dovecot_delivery.

Can any one point to me to the correct direction.

Upvotes: 1

Views: 486

Answers (1)

sherin
sherin

Reputation: 355

I removed {no} from the condition line and it is fixed.

Upvotes: 1

Related Questions