[exim] expansion variables in spam condition with Exim 4.63

Top Page
Delete this message
Reply to this message
Author: Mark Nipper
Date:  
To: exim-users
Subject: [exim] expansion variables in spam condition with Exim 4.63
I am having problems with expansion variables in the spam
condition inside of my acl_smtp_data ACL.  I have the following:
---
        warn message            = X-Spam-Score: $spam_score ($spam_bar)
                condition       = ${if <{$message_size}{500k}{1}{0}}
                spam            = $local_part:true
        warn message            = X-Spam-Report: $spam_report
                spam            = $local_part


        # Add X-Spam-Flag if spam is over system-wide threshold
        warn message            = X-Spam-Flag: YES
                condition       = ${if <{$message_size}{500k}{1}{0}}
                spam            = $local_part



        And in syslog I see:
---
Nov 22 10:28:40 king spamd[9529]: spamd: checking message <msgid...> for (unknown):0



where "(unknown)" use to be "nobody" before I changed the condition.

        I started initially by going for broke with:
---
spam = ${local_part}@${domain}



since I just recently set up SpamAssassin with SQL support. That
wasn't working either which finally led me to just $local_part to
see if even that works, which it doesn't.

        So, first off, the documentation says:
---
The username allows you to use per-domain or per-user antispam
profiles. The right-hand side is expanded before being used, so
you can put lookups or conditions there.



        Does this include expansion variables also?  I assumed it
would.  The other problem I saw mentioned in a similar context
though is that since we are in the data portion of the SMTP
transaction, isn't there the chance that multiple recipients are
defined at this point?


        I guess I'm looking for someone doing something similar
and a little guidance.  Should I not try to use the exiscan
version of SpamAssassin and handle this elsewhere when I know I'm
only dealing with one recipient at a time (if such a point even
exists necessarily) such as a pipe transport?


        For what it's worth, I'm also running DSPAM in this same
set up (using pipe transports, which is what I think I'll have to
do here also), but I like the way SpamAssassin stores things
better for the Bayesian tokens, preferences, and such.  And since
I've always run stuff through SpamAssassin during delivery also
anyway, I figured I'd consolidate into one product which happens
to do both Bayesian filtering and text analysis.  Besides which,
SquirrelMail has multiple plugins to manage the SQL side of
SpamAssassin at this point while DSPAM uses its own web interface
for this.


        Thanks for any help.  As always, I try to explain things
as well as possible.  But let me know if I can add anything to
make things clearer.  Hopefully this all makes sense.


-- 
Mark Nipper                                                e-contacts:
4320 Milam Street                                   nipsy@???
Bryan, Texas 77801-3920                     http://nipsy.bitgnome.net/
(979)575-3193                      AIM/Yahoo: texasnipsy ICQ: 66971617


-----BEGIN GEEK CODE BLOCK-----
Version: 3.1
GG/IT d- s++:+ a- C++$ UBL++++$ P--->+++ L+++$ !E---
W++(--) N+ o K++ w(---) O++ M V(--) PS+++(+) PE(--)
Y+ PGP t+ 5 X R tv b+++@ DI+(++) D+ G e h r++ y+(**)
------END GEEK CODE BLOCK------

---begin random quote of the moment---
"I do not know whether I was then a man dreaming I was a
butterfly, or whether I am now a butterfly dreaming I am a man."
-- Chang Tzu
----end random quote of the moment----