Courier::Filter::Module::SpamAssassin - SpamAssassin message filter module for the Courier::Filter framework


    use Courier::Filter::Module::SpamAssassin;

    my $module = Courier::Filter::Module::SpamAssassin->new(
        prefs_file  => '/etc/courier/filters/',
        sa_options  => {
            # any Mail::SpamAssassin options
        logger      => $logger,
        inverse     => 0,
        trusting    => 0,
        testing     => 0,
        debugging   => 0

    my $filter = Courier::Filter->new(
        modules     => [ $module ],


This class is a filter module class for use with Courier::Filter. It matches a message if its SpamAssassin spam score exceeds the configured threshold.


The following constructor is provided:

new(%options): returns Courier::Filter::Module::SpamAssassin

Creates a new SpamAssassin filter module.

%options is a list of key/value pairs representing any of the following options:


The path of a SpamAssassin preferences file. If this option is specified, its value is passed to the Mail::SpamAssassin constructor's userprefs_filename option . If undef, SpamAssassin is instructed not to read any preferences besides its default configuration files. Defaults to undef.


A hash-ref specifying options for the Mail::SpamAssassin object used by this filter module. See "new" in Mail::SpamAssassin for the supported options.

All options of the Courier::Filter::Module constructor are also supported. Please see "new" in Courier::Filter::Module for their descriptions.

Instance methods

See "Instance methods" in Courier::Filter::Module for a description of the provided instance methods.


Courier::Filter::Module, Courier::Filter::Overview.

For AVAILABILITY, SUPPORT, COPYRIGHT, and LICENSE information, see Courier::Filter::Overview.


Julian Mehnle <>