|Mail::SpamAssassin::Plugin::MIMEHeader(3)||User Contributed Perl Documentation||Mail::SpamAssassin::Plugin::MIMEHeader(3)|
MIMEHeader - perform regexp tests against MIME headers
loadplugin Mail::SpamAssassin::Plugin::MIMEHeader mimeheader NAME_OF_RULE Content-Id =~ /foo/
This plugin allows regexp rules to be written against MIME headers in the message.
- mimeheader NAME_OF_RULE Header-Name =~ /pattern/modifiers
- Specify a rule. "NAME_OF_RULE" is the
name of the rule to be used,
"Header-Name" is the name of the MIME
header to check, and
"/pattern/modifiers" is the Perl regular
expression to match against this.
Note that in a message of multiple parts, each header will be checked against the pattern separately. In other words, if multiple parts have a 'Content-Type' header, each header's value will be tested individually as a separate string.
Header names are considered case-insensitive.
The header values are normally cleaned up a little; for example, whitespace around the newline character in "folded" headers will be replaced with a single space. Append ":raw" to the header name to retrieve the raw, undecoded value, including pristine whitespace, instead.
- tflags NAME_OF_RULE range=x-y
- Match only from specific MIME parts, indexed in the order they are parsed.
Part 1 = main message headers. Part 2 = next part etc.
range=1 (match only main headers, not any subparts) range=2- (match any subparts, but not the main headers) range=-3 (match only first three parts, including main headers) range=2-3 (match only first two subparts)
- tflags NAME_OF_RULE concat
- Concatenate all headers from all mime parts (possible range applied) into a single string for matching. This allows matching headers across multiple parts with single regex. Normally pattern is tested individually for different mime parts.