procmail
[Top] [All Lists]

Re: scoring

2002-11-10 17:45:09
From: Tom Allison <tallison(_at_)tacocat(_dot_)net>

But I'm not seeing how to get the result of spamassassin to be 
registered as a scoring value...

:0
* 1^0 |spamassassin -e -d
{ }

but everything comes back with a 1 no matter what.


First of all, you'd need the HB flags to conduct a condition-line
test with an external program.  Second, even if your guess
at syntax worked, procmail wouldn't save the score unless you
do something specific to tell it to.  Third, the -d flag to
SA undoes the result.  So even if you had something that
worked, you wouldn't know it.  Fourth, the -e flag to SA
produces an exit-code of 1 if spam, but to procmail, that's a
failure.  So you have to invert the test.

This would work in theory:

        :0
        * ! HB ?? ? spamassassin -eS
        { SASCORE = 1 }

But there is a small buffer in some of the SA code when the message is
piped this way on the condition line.  It will cause a false negative
sometimes.  I speak from experience, though my explanation may be
wanting.

Anyway, this works and gets around that problem:


      :0 Wc
       | spamassassin -eS

      :0 e
       { SASCORE = 1 }

Enjoy.

-- 
dman


_______________________________________________
procmail mailing list
procmail(_at_)lists(_dot_)RWTH-Aachen(_dot_)DE
http://MailMan.RWTH-Aachen.DE/mailman/listinfo/procmail

<Prev in Thread] Current Thread [Next in Thread>