[exim] problem conditionally calling nested ACLs

Top Page
Delete this message
Reply to this message
Author: snowcrash+exim-users
Date:  
To: exim-users
Subject: [exim] problem conditionally calling nested ACLs
after reading abt "ACL Verbs" and "Calling Nested ACLs",
in my "acl_smtp_data", i have three calls to nested acl/subroutines,



  acl_smtp_data:
    ...
    ### VIRUS ###
    accept
             !senders        = +whitelist_virus
             endpass
             acl             = aux_scan_virus


    ### DOMAIN KEYS ###
    accept
             !senders        = +whitelist_dk
             endpass
             acl             = aux_scan_domainkeys


    ### SPAM ###
    accept
             !senders        = +whitelist_spam
             endpass
             acl             = aux_scan_spam


    ...
  # END acl_smtp_data:


where,

  addresslist whitelist_virus   = friend@???
  addresslist whitelist_dk      = friend@???
  addresslist whitelist_spam    = friend@???


my intent was/is, that this .conf will:

(1) SKIP each/any aux_scan_* acl's execution if the current message's
sender's address == "friend@???".
(2) DROP/DENY the message if the call to the nested ACL 'fails', i.e.,
returns a DROP/DENY
(3) PASSES control to the next ACL stmt if the nested ACL 'succeeds',
i.e. returns an ACCEPT

but, currently, for a test message EITHER from a whitelisted address
("friend@???") OR any other, with *NO* virus-, dk-, or
spam- FAILure triggers, this setup simply, EXECS the first one
("aux_scan_virus"), and SKIPS the next two.

suggestions as to where/how my usage is wrong?

thanks.