Courier::Filter::Module::Header - Message header filter module for the Courier::Filter framework
use Courier::Filter::Module::Header; my $module = Courier::Filter::Module::Header->new( fields => \%patterns_by_field_name, response => $response_text, 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 one of the message's header fields matches the configured criteria.
The following constructor is provided:
Creates a new Header filter module.
%options is a list of key/value pairs representing any of the following options:
Required. A reference to a hash containing the message header field names and patterns (as key/value pairs) that messages are to be matched against. Field names are matched case-insensitively. Patterns may either be simple strings (for exact, case-sensitive matches) or regular expression objects created by the qr// operator (for inexact, partial matches).
qr//
So for instance, to match any message from the "debian-devel" mailing list with the subject containing something about 'duelling banjoes', you could set the fields option as follows:
fields
fields => { 'list-id' => '<debian-devel.lists.debian.org>', subject => qr/duell?ing\s+banjoe?s?/i }
A string that is to be returned literally as the match result in case of a match. Defaults to "Prohibited header value detected: <field>: <value>".
All options of the Courier::Filter::Module constructor are also supported. Please see "new()" in Courier::Filter::Module for their descriptions.
See "Instance methods" in Courier::Filter::Module for a description of the provided instance methods.
Courier::Filter::Module::Envelope, Courier::Filter::Module, Courier::Filter::Overview.
For AVAILABILITY, SUPPORT, and LICENSE information, see Courier::Filter::Overview.
Julian Mehnle <julian@mehnle.net>
To install Courier::Filter, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Courier::Filter
CPAN shell
perl -MCPAN -e shell install Courier::Filter
For more information on module installation, please visit the detailed CPAN module installation guide.