[Mailman-Users] Spamassassin Integration Question

Mark Sapiro msapiro at value.net
Tue Oct 24 03:11:55 CEST 2006


Christopher Hatty wrote:

>I've followed the instructions at this site:
>http://www.jamesh.id.au/articles/mailman-spamassassin/
> 
>It works wonderfully, with one caveat.
> 
>If a message is detected as spam, it is sent to the moderation queue, even
>if that message would otherwise have been discarded. 



According to the web site you reference, the SpamAssassin.py handler
recognizes the following mm_cfg.py settings:

SPAMASSASSIN_HOST
    The host spamd is running on. A string in hostname:port format.
SPAMASSASSIN_DISCARD_SCORE
    If a message receives a score above this limit, the message will be
discarded without moderation. The default value for this variable is
10.
SPAMASSASSIN_HOLD_SCORE
    If a message receives a score above this limit, the message will be
held for moderation. The default value for this variable is 5.
SPAMASSASSIN_MEMBER_BONUS
    If the message was sent by a member of the list, an adjustment can
be performed on the score. This makes it less likely that a message
claiming to come from a list member will be held for moderation. The
default value for this variable is 2.

Are you saying that messages with SpamAssassin score greater than
SPAMASSASSIN_DISCARD_SCORE are being held and not discarded, or just
that messages with SpamAssassin score between SPAMASSASSIN_HOLD_SCORE
and SPAMASSASSIN_DISCARD_SCORE that would be discarded for other
reasons are held instead?

If the latter, as you recognize ...

>Has anyone else run into this and managed to find a workaround? 
> 
>At present, my plan is to simply use a custom global pipeline for each list.


You can control the order of tests by the order of the pipeline. If you
want the SpamAssassin tests and actions to be done after those of
Moderate and Hold, just put SpamAssassin after Hold in
GLOBAL_PIPELINE. There's no need to have a per-list pipeline. Instead
of putting SpamAssassin between SpamDetect and Approve by putting

GLOBAL_PIPELINE.insert(1, 'SpamAssassin')

in mm_cfg.py, put it between Hold and MimeDel with

GLOBAL_PIPELINE.insert(GLOBAL_PIPELINE.index('MimeDel'), 'SpamAssassin')

See
<http://www.python.org/cgi-bin/faqw-mm.py?req=show&file=faq04.067.htp>.

-- 
Mark Sapiro <msapiro at value.net>       The highway is for gamblers,
San Francisco Bay Area, California    better use your sense - B. Dylan




More information about the Mailman-Users mailing list