[exim] Comparing spam_score_int to User-Specified Value via …

Αρχική Σελίδα
Delete this message
Reply to this message
Συντάκτης: Brian Spraker
Ημερομηνία:  
Προς: Exim-users
Αντικείμενο: [exim] Comparing spam_score_int to User-Specified Value via MySQL
Hello everyone,

I have been using Exim4 for quite some time now on the Ubuntu platform.

Recently I've decided that I want to be able to provide my users with the
ability to control their own spam thresholds in regards to when mail is rejected
for them - or when the subject line is re-written.

So far I've only changed the settings for the subject re-writing. I've looked
at several other sites online and something just appears to be wrong; as in it
never tends to get the value from the record in the database - and it always
fails to the default value I have set.

Here is what I have:

warn
        Debian-exim:true
        message = Subject: SPAM SCORE: $spam_score $h_subject
     condition = ${if >{$spam_score_int}{${lookup mysql{SELECT spam_flag FROM 
horde_users WHERE user_uid = ${quote_mysql:$local_part@$domain}}{$value}{43}}}}


I've attempted multiple tests and it appears that nothing is being pulled from
the database. The "user_uid" field in the database contains the user's full
e-mail address and the "spam_flag" field contains a VARCHAR type with the value.

As an example - I set "spam_flag" in the record for my e-mail address to "10".
I then telnet in and do a test and it goes through without the subject being
changed - even though the spam score is 4.2.

In the above, if I change the {43} to {40}, the message does get flagged (since
the spam score was 4.2). But this is a fail-back technique if the MySQL lookup
isn't working - which it clearly is not.

Completely out of ideas and was hoping someone here could assist me in maybe
getting the right syntax for this.

Thank you!

Brian S.
BsnTech Networks