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