Re: [Exim-users-de] [hs@schlittermann.de: Re: Trouble mit Ne…

Startseite
Nachricht löschen
Nachricht beantworten
Autor: Nicola Tiling
Datum:  
To: vol
CC: exim-users-de
Betreff: Re: [Exim-users-de] [hs@schlittermann.de: Re: Trouble mit Negativem Spam Score]

Am 04.06.2008 um 13:28 schrieb vol@???:


Hi Vol

> Nicola Tiling schrieb:
>>   warn  condition      = ${if and { {eq{$header_X-SA-Run:}{Yes}} \
>>                                     {!eq {${lookup  
>> pgsql{WHITE_FROM}}} {1}} \
>>                                     {!eq {${lookup  
>> pgsql{WHITE_SUBJ}}} {1}} \
>>                                   } {yes}{no}}
>>         spam           = maildeliver:true/defer_ok
>>         message        = X-Spam_score: $spam_score\n

>
> Die Mail __OHNE__ Markierung ist durch diesen Abschnitt gelaufen,
> was daran zu erkennen ist, dass der Header "X-Spam_score: -4.4"
> gesetzt wird.
> Die Mail __MIT__ Markierung durchläuft diesen Abschnitt nicht, was
> man am fehlenden Header "X-Spam_score" sehen kann. Wahrscheinlich
> ist eine der Bedingungen für diese Mail nicht erfüllt.




Hier wurde vorher in der Datenbank geguckt ob für den User ein
Spamcheck aktiviert ist und ob die Absender oder das Subjekt in der
Whitelist sind:

   warn  message        = X-SA-Run: Yes
         condition      = ${if and { {eq {${lookup pgsql{SPA_ON}}}{1}} \
                                   } {yes}{no}}
         set acl_m4     = ${lookup pgsql{HEAD_SCORE}}




>
>>   #spam_score_int darf nicht NULL sein!
>>   warn  condition      = ${if and{ {>{$spam_score_int}{0}} \
>>                                    {>{$spam_score_int}{$acl_m4}} \
>>                                  } {1}{0}}
>>         spam           = maildeliver:true/defer_ok
>>         message        = X-Spam-Flag: YES\n\
>>                          X-Spam_score_int: $spam_score_int\n\
>>                          X-Spam_value: $acl_m4\n\
>>                          X-Spam_bar: $spam_bar\n\
>>                          X-Spam_subject:  
>> *****SPAM*****($spam_score)  $h_subject:\n\
>>                          X-Spam_report: $spam_report\n

>
>
> Die Mail __MIT__ Markierung ist durch diesen Abschnitt gelaufen.
> $spam_score_int enthält wahrscheinlich während der Abprüfung der
> Bedingung einen undefinierten Wert (siehe Hinweis von Heiko),




Ich habe gerade einen anderen Hinweis gefunden - Muß vielleicht nur  
das "true" bei
    "spam           = maildeliver:true/defer_ok"
weg?
Das hier habe ich gerade im Mailarchiv der englischen Liste gelesen:


http://www.mail-archive.com/exim-users@exim.org/msg14710.html

-----------
>From your exim.conf:


    # Always add X-Spam-Score and X-Spam-Report headers, using SA  
system-wide
settings
    # (user "nobody"), no matter if over threshold or not.
    warn  message = X-Spam-Score: $spam_score ($spam_bar)
          spam = nobody:true
    warn  message = X-Spam-Report: $spam_report
          spam = nobody:true


Like the comment says, these headers will be added regardless of the
spam score. You want to only add the X-Spam-Report header if the message
is over the threshold, like this:

    warn  message = X-Spam-Report: $spam_report
          spam = nobody
....


More accurately, ":true" means that the spam condition is always true,
regardless of whether the score is above the SA-configured threshold
(required_score) or not. This is so you can call SA, ignoring that
threshold,
and use other conditions to decide whether it's spam or not, and what
headers
to add. The return value of the spam condition is otherwise the only way
required_score is used by Exim.
-----------

Davon mal abgesehen - ist hier ja die Zeile "spam = maildeliver:true/
defer_ok" nicht überflüssig !?! Ich habe ja im Abschnitt vorher schon
die Mail auf Spam gescannt (unter der Bedingung das dies für den User
aktiv geschaltet ist). ?!? Sinn dieses Abschnitts sollte doch die
Markierung der Mail im Subjekt und die Erstellung eines Reports sein.