Dave Pooser wrote:
> Okay, not *me* per se, but my role accounts.
>
> In acl_rcpt_to I have:
>
> # Accept mail to postmaster in any local domain, regardless of the source,
> # and without verifying the sender.
>
> warn set acl_m0 = Delivered to role account
> local_parts = postmaster : blacklist-admin : abuse
> domains = +local_domains
>
> accept local_parts = postmaster : blacklist-admin : abuse
> domains = +local_domains
>
>
> And later, in acl_data:
>
> deny message = Message blocked by our spam filter; email\
> <postmaster@???> with questions.
> spam = nobody:true
> condition = ${if >{$spam_score_int}{100}{1}{0}}
> !condition = ${if eq{$acl_m0}{Delivered to role account}}
>
> The idea is if any local part is a role account, I want to accept the
> message for all recipients; later on I can quarantine the spammy mail.
> Unfortunately, the behavior I see is that no spam gets denied until I
> comment out the !condition line. I've also tried
> !condition = ${if def:acl_m0}
> with no joy either.
>
> Please let me know what particular stupidity I'm committing. I've RTFMed and
> googled without any joy.
Reverse these two conditional tests so you haven't denied before even testing
for a role account:
> deny message = Message blocked by our spam filter; email\
> <postmaster@???> with questions.
> spam = nobody:true
> !condition = ${if eq{$acl_m0}{Delivered to role account}}
> condition = ${if >{$spam_score_int}{100}{1}{0}}
>
Personally, I might even skip the spam test:
> deny message = Message blocked by our spam filter; email\
> <postmaster@???> with questions.
> !condition = ${if eq{$acl_m0}{Delivered to role account}}
> spam = nobody:true
> condition = ${if >{$spam_score_int}{100}{1}{0}}
HTH,
Bill