You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@spamassassin.apache.org by km...@apache.org on 2014/02/11 18:26:52 UTC

svn commit: r1567225 [10/15] - in /spamassassin/site/full/3.4.x: ./ doc/

Added: spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_DKIM.html
URL: http://svn.apache.org/viewvc/spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_DKIM.html?rev=1567225&view=auto
==============================================================================
--- spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_DKIM.html (added)
+++ spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_DKIM.html Tue Feb 11 17:26:49 2014
@@ -0,0 +1,378 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<title>Mail::SpamAssassin::Plugin::DKIM - perform DKIM verification tests</title>
+<link rev="made" href="mailto:root@twm2005-dev.thoughtworthy.com" />
+</head>
+
+<body style="background-color: white">
+
+<p><a name="__index__"></a></p>
+<!-- INDEX BEGIN -->
+
+<ul>
+
+	<li><a href="#name">NAME</a></li>
+	<li><a href="#synopsis">SYNOPSIS</a></li>
+	<li><a href="#description">DESCRIPTION</a></li>
+	<li><a href="#tags">TAGS</a></li>
+	<li><a href="#see_also">SEE ALSO</a></li>
+	<li><a href="#user_settings">USER SETTINGS</a></li>
+	<li><a href="#administrator_settings">ADMINISTRATOR SETTINGS</a></li>
+</ul>
+<!-- INDEX END -->
+
+<hr />
+<p>
+</p>
+<h1><a name="name">NAME</a></h1>
+<p>Mail::SpamAssassin::Plugin::DKIM - perform DKIM verification tests</p>
+<p>
+</p>
+<hr />
+<h1><a name="synopsis">SYNOPSIS</a></h1>
+<pre>
+ loadplugin Mail::SpamAssassin::Plugin::DKIM [/path/to/DKIM.pm]</pre>
+<p>Taking into account signatures from any signing domains:</p>
+<pre>
+ full   DKIM_SIGNED           eval:check_dkim_signed()
+ full   DKIM_VALID            eval:check_dkim_valid()
+ full   DKIM_VALID_AU         eval:check_dkim_valid_author_sig()</pre>
+<p>Taking into account signatures from specified signing domains only:
+(quotes may be omitted on domain names consisting only of letters, digits,
+dots, and minus characters)</p>
+<pre>
+ full   DKIM_SIGNED_MY1       eval:check_dkim_signed('dom1','dom2',...)
+ full   DKIM_VALID_MY1        eval:check_dkim_valid('dom1','dom2',...)
+ full   DKIM_VALID_AU_MY1     eval:check_dkim_valid_author_sig('d1','d2',...)</pre>
+<pre>
+ full   __DKIM_DEPENDABLE     eval:check_dkim_dependable()</pre>
+<p>Author Domain Signing Practices (ADSP) from any author domains:</p>
+<pre>
+ header DKIM_ADSP_NXDOMAIN    eval:check_dkim_adsp('N')
+ header DKIM_ADSP_ALL         eval:check_dkim_adsp('A')
+ header DKIM_ADSP_DISCARD     eval:check_dkim_adsp('D')
+ header DKIM_ADSP_CUSTOM_LOW  eval:check_dkim_adsp('1')
+ header DKIM_ADSP_CUSTOM_MED  eval:check_dkim_adsp('2')
+ header DKIM_ADSP_CUSTOM_HIGH eval:check_dkim_adsp('3')</pre>
+<p>Author Domain Signing Practices (ADSP) from specified author domains only:</p>
+<pre>
+ header DKIM_ADSP_MY1         eval:check_dkim_adsp('*','dom1','dom2',...)</pre>
+<pre>
+ describe DKIM_SIGNED   Message has a DKIM or DK signature, not necessarily valid
+ describe DKIM_VALID    Message has at least one valid DKIM or DK signature
+ describe DKIM_VALID_AU Message has a valid DKIM or DK signature from author's domain
+ describe __DKIM_DEPENDABLE     A validation failure not attributable to truncation</pre>
+<pre>
+ describe DKIM_ADSP_NXDOMAIN    Domain not in DNS and no valid author domain signature
+ describe DKIM_ADSP_ALL         Domain signs all mail, no valid author domain signature
+ describe DKIM_ADSP_DISCARD     Domain signs all mail and suggests discarding mail with no valid author domain signature, no valid author domain signature
+ describe DKIM_ADSP_CUSTOM_LOW  adsp_override is CUSTOM_LOW, no valid author domain signature
+ describe DKIM_ADSP_CUSTOM_MED  adsp_override is CUSTOM_MED, no valid author domain signature
+ describe DKIM_ADSP_CUSTOM_HIGH adsp_override is CUSTOM_HIGH, no valid author domain signature</pre>
+<p>For compatibility with pre-3.3.0 versions, the following are synonyms:</p>
+<pre>
+ OLD: eval:check_dkim_verified = NEW: eval:check_dkim_valid
+ OLD: eval:check_dkim_signall  = NEW: eval:check_dkim_adsp('A')
+ OLD: eval:check_dkim_signsome = NEW: redundant, semantically always true</pre>
+<p>The __DKIM_DEPENDABLE eval rule deserves an explanation. The rule yields true
+when signatures are supplied by a caller, OR ELSE when signatures are obtained
+by this plugin AND either there are no signatures OR a rule __TRUNCATED was
+false. In other words: __DKIM_DEPENDABLE is true when failed signatures can
+not be attributed to message truncation when feeding a message to SpamAssassin.
+It can be consulted to prevent false positives on large but truncated messages
+with poor man's implementation of ADSP by hand-crafted rules.</p>
+<p>
+</p>
+<hr />
+<h1><a name="description">DESCRIPTION</a></h1>
+<p>This SpamAssassin plugin implements DKIM lookups as described by the RFC 4871,
+as well as historical DomainKeys lookups, as described by RFC 4870, thanks
+to the support for both types of signatures by newer versions of module
+Mail::DKIM.</p>
+<p>It requires the <code>Mail::DKIM</code> CPAN module to operate. Many thanks to Jason Long
+for that module.</p>
+<p>
+</p>
+<hr />
+<h1><a name="tags">TAGS</a></h1>
+<p>The following tags are added to the set, available for use in reports,
+header fields, other plugins, etc.:</p>
+<pre>
+  _DKIMIDENTITY_
+    Agent or User Identifier (AUID) (the 'i' tag) from valid signatures;</pre>
+<pre>
+  _DKIMDOMAIN_
+    Signing Domain Identifier (SDID) (the 'd' tag) from valid signatures;</pre>
+<p>Identities and domains from signatures which failed verification are not
+included in these tags. Duplicates are eliminated (e.g. when there are two or
+more valid signatures from the same signer, only one copy makes it into a tag).
+Note that there may be more than one signature in a message - currently they
+are provided as a space-separated list, although this behaviour may change.</p>
+<p>
+</p>
+<hr />
+<h1><a name="see_also">SEE ALSO</a></h1>
+<p><code>Mail::DKIM</code>, <code>Mail::SpamAssassin::Plugin</code></p>
+<pre>
+  <a href="http://jason.long.name/dkimproxy/">http://jason.long.name/dkimproxy/</a>
+  <a href="http://tools.ietf.org/rfc/rfc4871.txt">http://tools.ietf.org/rfc/rfc4871.txt</a>
+  <a href="http://tools.ietf.org/rfc/rfc4870.txt">http://tools.ietf.org/rfc/rfc4870.txt</a>
+  <a href="http://tools.ietf.org/rfc/rfc5617.txt">http://tools.ietf.org/rfc/rfc5617.txt</a>
+  <a href="http://ietf.org/html.charters/dkim-charter.html">http://ietf.org/html.charters/dkim-charter.html</a></pre>
+<p>
+</p>
+<hr />
+<h1><a name="user_settings">USER SETTINGS</a></h1>
+<dl>
+<dt><strong><a name="item_whitelist_from_dkim_author_40example_2ecom__5bsign">whitelist_from_dkim <a href="mailto:author@example.com">author@example.com</a> [signing-domain]</a></strong><br />
+</dt>
+<dd>
+Works similarly to whitelist_from, except that in addition to matching
+an author address (From) to the pattern in the first parameter, the message
+must also carry a Domain Keys Identified Mail (DKIM) signature made by a
+signing domain (SDID, i.e. the d= tag) that is acceptable to us.
+</dd>
+<dd>
+<p>Only one whitelist entry is allowed per line, as in <code>whitelist_from_rcvd</code>.
+Multiple <code>whitelist_from_dkim</code> lines are allowed. File-glob style characters
+are allowed for the From address (the first parameter), just like with
+<code>whitelist_from_rcvd</code>. The second parameter does not accept wildcards.</p>
+</dd>
+<dd>
+<p>If no signing-domain parameter is specified, the only acceptable signature
+will be an Author Domain Signature (sometimes called first-party signature)
+which is a signature where the signing domain (SDID) of a signature matches
+the domain of the author's address (i.e. the address in a From header field).</p>
+</dd>
+<dd>
+<p>Since this whitelist requires a DKIM check to be made, network tests must
+be enabled.</p>
+</dd>
+<dd>
+<p>Examples of whitelisting based on an author domain signature (first-party):</p>
+</dd>
+<dd>
+<pre>
+  whitelist_from_dkim joe@example.com
+  whitelist_from_dkim *@corp.example.com
+  whitelist_from_dkim *@*.example.com</pre>
+</dd>
+<dd>
+<p>Examples of whitelisting based on third-party signatures:</p>
+</dd>
+<dd>
+<pre>
+  whitelist_from_dkim jane@example.net      example.org
+  whitelist_from_dkim rick@info.example.net example.net
+  whitelist_from_dkim *@info.example.net    example.net
+  whitelist_from_dkim *@*                   remailer.example.com</pre>
+</dd>
+<p></p>
+<dt><strong><a name="item_def_whitelist_from_dkim_author_40example_2ecom__5b">def_whitelist_from_dkim <a href="mailto:author@example.com">author@example.com</a> [signing-domain]</a></strong><br />
+</dt>
+<dd>
+Same as <code>whitelist_from_dkim</code>, but used for the default whitelist entries
+in the SpamAssassin distribution.  The whitelist score is lower, because
+these are often targets for abuse of public mailers which sign their mail.
+</dd>
+<p></p>
+<dt><strong><a name="item_unwhitelist_from_dkim_author_40example_2ecom__5bsi">unwhitelist_from_dkim <a href="mailto:author@example.com">author@example.com</a> [signing-domain]</a></strong><br />
+</dt>
+<dd>
+Removes an email address with its corresponding signing-domain field
+from def_whitelist_from_dkim and whitelist_from_dkim tables, if it exists.
+Parameters to unwhitelist_from_dkim must exactly match the parameters of
+a corresponding whitelist_from_dkim or def_whitelist_from_dkim config
+option which created the entry, for it to be removed (a domain name is
+matched case-insensitively);  i.e. if a signing-domain parameter was
+specified in a whitelisting command, it must also be specified in the
+unwhitelisting command.
+</dd>
+<dd>
+<p>Useful for removing undesired default entries from a distributed configuration
+by a local or site-specific configuration or by <code>user_prefs</code>.</p>
+</dd>
+<p></p>
+<dt><strong><a name="item_adsp_override_domain__5bsigning_2dpractices_5d">adsp_override domain [signing-practices]</a></strong><br />
+</dt>
+<dd>
+Currently few domains publish their signing practices (RFC 5617 - ADSP),
+partly because the ADSP rfc is rather new, partly because they think
+hardly any recipient bothers to check it, and partly for fear that some
+recipients might lose mail due to problems in their signature validation
+procedures or mail mangling by mailers beyond their control.
+</dd>
+<dd>
+<p>Nevertheless, recipients could benefit by knowing signing practices of a
+sending (author's) domain, for example to recognize forged mail claiming
+to be from certain domains which are popular targets for phishing, like
+financial institutions. Unfortunately, as signing practices are seldom
+published or are weak, it is hardly justifiable to look them up in DNS.</p>
+</dd>
+<dd>
+<p>To overcome this chicken-or-the-egg problem, the <code>adsp_override</code> mechanism
+allows recipients using SpamAssassin to override published or defaulted
+ADSP for certain domains. This makes it possible to manually specify a
+stronger (or weaker) signing practices than a signing domain is willing
+to publish (explicitly or by default), and also save on a DNS lookup.</p>
+</dd>
+<dd>
+<p>Note that ADSP (published or overridden) is only consulted for messages
+which do not contain a valid DKIM signature from the author's domain.</p>
+</dd>
+<dd>
+<p>According to RFC 5617, signing practices can be one of the following:
+<code>unknown</code>, <code>all</code> and <code>discardable</code>.</p>
+</dd>
+<dd>
+<p><code>unknown</code>: The domain might sign some or all email - messages from the
+domain may or may not have an Author Domain Signature. This is a default
+if a domain exists in DNS but no ADSP record is found.</p>
+</dd>
+<dd>
+<p><code>all</code>: All mail from the domain is signed with an Author Domain Signature.</p>
+</dd>
+<dd>
+<p><code>discardable</code>: All mail from the domain is signed with an Author Domain
+Signature.  Furthermore, if a message arrives without a valid Author Domain
+Signature, the domain encourages the <code>recipient(s)</code> to discard it.</p>
+</dd>
+<dd>
+<p>ADSP lookup can also determine that a domain is ``out of scope'', i.e., the
+domain does not exist (NXDOMAIN) in the DNS.</p>
+</dd>
+<dd>
+<p>To override domain's signing practices in a SpamAssassin configuration file,
+specify an <code>adsp_override</code> directive for each sending domain to be overridden.</p>
+</dd>
+<dd>
+<p>Its first argument is a domain name. Author's domain is matched against it,
+matching is case insensitive. This is not a regular expression or a file-glob
+style wildcard, but limited wildcarding is still available: if this argument
+starts by a ``*.'' (or is a sole ``*''), author's domain matches if it is a
+subdomain (to one or more levels) of the argument. Otherwise (with no leading
+asterisk) the match must be exact (not a subdomain).</p>
+</dd>
+<dd>
+<p>An optional second parameter is one of the following keywords
+(case-insensitive): <code>nxdomain</code>, <code>unknown</code>, <code>all</code>, <code>discardable</code>,
+<code>custom_low</code>, <code>custom_med</code>, <code>custom_high</code>.</p>
+</dd>
+<dd>
+<p>Absence of this second parameter implies <code>discardable</code>. If a domain is not
+listed by a <code>adsp_override</code> directive nor does it explicitly publish any
+ADSP record, then <code>unknown</code> is implied for valid domains, and <code>nxdomain</code>
+for domains not existing in DNS. (Note: domain validity is only checked with
+versions of Mail::DKIM 0.37 or later (actually since 0.36_5), the <code>nxdomain</code>
+would never turn up with older versions).</p>
+</dd>
+<dd>
+<p>The strong setting <code>discardable</code> is useful for domains which are known
+to always sign their mail and to always send it directly to recipients
+(not to mailing lists), and are frequent targets of fishing attempts,
+such as financial institutions. The <code>discardable</code> is also appropriate
+for domains which are known never to send any mail.</p>
+</dd>
+<dd>
+<p>When a message does not contain a valid signature by the author's domain
+(the domain in a From header field), the signing practices pertaining
+to author's domain determine which of the following rules fire and
+contributes its score: DKIM_ADSP_NXDOMAIN, DKIM_ADSP_ALL, DKIM_ADSP_DISCARD,
+DKIM_ADSP_CUSTOM_LOW, DKIM_ADSP_CUSTOM_MED, DKIM_ADSP_CUSTOM_HIGH. Not more
+than one of these rules can fire for messages that have one author (but see
+below). The last three can only result from a 'signing-practices' as given
+in a <code>adsp_override</code> directive (not from a DNS lookup), and can serve as
+a convenient means of providing a different score if scores assigned to
+DKIM_ADSP_ALL or DKIM_ADSP_DISCARD are not considered suitable for some
+domains.</p>
+</dd>
+<dd>
+<p>RFC 5322 permits a message to have more than one author - multiple addresses
+may be listed in a single From header field.  RFC 5617 defines that a message
+with multiple authors has multiple signing domain signing practices, but does
+not prescribe how these should be combined. In presence of multiple signing
+practices, more than one of the DKIM_ADSP_* rules may fire.</p>
+</dd>
+<dd>
+<p>As a precaution against firing DKIM_ADSP_* rules when there is a known local
+reason for a signature verification failure, the domain's ADSP is considered
+'unknown' when DNS lookups are disabled or a DNS lookup encountered a temporary
+problem on fetching a public key from the author's domain. Similarly, ADSP
+is considered 'unknown' when this plugin did its own signature verification
+(signatures were not passed to SA by a caller) and a metarule __TRUNCATED was
+triggered, indicating the caller intentionally passed a truncated message to
+SpamAssassin, which was a likely reason for a signature verification failure.</p>
+</dd>
+<dd>
+<p>Example:</p>
+</dd>
+<dd>
+<pre>
+  adsp_override *.mydomain.example.com   discardable
+  adsp_override *.neversends.example.com discardable</pre>
+</dd>
+<dd>
+<pre>
+  adsp_override ebay.com
+  adsp_override *.ebay.com
+  adsp_override ebay.co.uk
+  adsp_override *.ebay.co.uk
+  adsp_override paypal.com
+  adsp_override *.paypal.com
+  adsp_override amazon.com
+  adsp_override ealerts.bankofamerica.com
+  adsp_override americangreetings.com
+  adsp_override egreetings.com
+  adsp_override bluemountain.com
+  adsp_override hallmark.com   all
+  adsp_override *.hallmark.com all
+  adsp_override youtube.com    custom_high
+  adsp_override google.com     custom_low
+  adsp_override gmail.com      custom_low
+  adsp_override googlemail.com custom_low
+  adsp_override yahoo.com      custom_low
+  adsp_override yahoo.com.au   custom_low
+  adsp_override yahoo.se       custom_low</pre>
+</dd>
+<dd>
+<pre>
+  adsp_override junkmailerkbw0rr.com nxdomain
+  adsp_override junkmailerd2hlsg.com nxdomain</pre>
+</dd>
+<dd>
+<pre>
+  # effectively disables ADSP network DNS lookups for all other domains:
+  adsp_override *              unknown</pre>
+</dd>
+<dd>
+<pre>
+  score DKIM_ADSP_ALL          2.5
+  score DKIM_ADSP_DISCARD     25
+  score DKIM_ADSP_NXDOMAIN     3</pre>
+</dd>
+<dd>
+<pre>
+  score DKIM_ADSP_CUSTOM_LOW   1
+  score DKIM_ADSP_CUSTOM_MED   3.5
+  score DKIM_ADSP_CUSTOM_HIGH  8</pre>
+</dd>
+<p></p></dl>
+<p>
+</p>
+<hr />
+<h1><a name="administrator_settings">ADMINISTRATOR SETTINGS</a></h1>
+<dl>
+<dt><strong><a name="item_n">dkim_timeout n             (default: 5)</a></strong><br />
+</dt>
+<dd>
+How many seconds to wait for a DKIM query to complete, before scanning
+continues without the DKIM result. A numeric value is optionally suffixed
+by a time unit (s, m, h, d, w, indicating seconds (default), minutes, hours,
+days, weeks).
+</dd>
+<p></p></dl>
+
+</body>
+
+</html>

Added: spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_DKIM.txt
URL: http://svn.apache.org/viewvc/spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_DKIM.txt?rev=1567225&view=auto
==============================================================================
--- spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_DKIM.txt (added)
+++ spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_DKIM.txt Tue Feb 11 17:26:49 2014
@@ -0,0 +1,308 @@
+NAME
+    Mail::SpamAssassin::Plugin::DKIM - perform DKIM verification tests
+
+SYNOPSIS
+     loadplugin Mail::SpamAssassin::Plugin::DKIM [/path/to/DKIM.pm]
+
+    Taking into account signatures from any signing domains:
+
+     full   DKIM_SIGNED           eval:check_dkim_signed()
+     full   DKIM_VALID            eval:check_dkim_valid()
+     full   DKIM_VALID_AU         eval:check_dkim_valid_author_sig()
+
+    Taking into account signatures from specified signing domains only:
+    (quotes may be omitted on domain names consisting only of letters,
+    digits, dots, and minus characters)
+
+     full   DKIM_SIGNED_MY1       eval:check_dkim_signed('dom1','dom2',...)
+     full   DKIM_VALID_MY1        eval:check_dkim_valid('dom1','dom2',...)
+     full   DKIM_VALID_AU_MY1     eval:check_dkim_valid_author_sig('d1','d2',...)
+
+     full   __DKIM_DEPENDABLE     eval:check_dkim_dependable()
+
+    Author Domain Signing Practices (ADSP) from any author domains:
+
+     header DKIM_ADSP_NXDOMAIN    eval:check_dkim_adsp('N')
+     header DKIM_ADSP_ALL         eval:check_dkim_adsp('A')
+     header DKIM_ADSP_DISCARD     eval:check_dkim_adsp('D')
+     header DKIM_ADSP_CUSTOM_LOW  eval:check_dkim_adsp('1')
+     header DKIM_ADSP_CUSTOM_MED  eval:check_dkim_adsp('2')
+     header DKIM_ADSP_CUSTOM_HIGH eval:check_dkim_adsp('3')
+
+    Author Domain Signing Practices (ADSP) from specified author domains
+    only:
+
+     header DKIM_ADSP_MY1         eval:check_dkim_adsp('*','dom1','dom2',...)
+
+     describe DKIM_SIGNED   Message has a DKIM or DK signature, not necessarily valid
+     describe DKIM_VALID    Message has at least one valid DKIM or DK signature
+     describe DKIM_VALID_AU Message has a valid DKIM or DK signature from author's domain
+     describe __DKIM_DEPENDABLE     A validation failure not attributable to truncation
+
+     describe DKIM_ADSP_NXDOMAIN    Domain not in DNS and no valid author domain signature
+     describe DKIM_ADSP_ALL         Domain signs all mail, no valid author domain signature
+     describe DKIM_ADSP_DISCARD     Domain signs all mail and suggests discarding mail with no valid author domain signature, no valid author domain signature
+     describe DKIM_ADSP_CUSTOM_LOW  adsp_override is CUSTOM_LOW, no valid author domain signature
+     describe DKIM_ADSP_CUSTOM_MED  adsp_override is CUSTOM_MED, no valid author domain signature
+     describe DKIM_ADSP_CUSTOM_HIGH adsp_override is CUSTOM_HIGH, no valid author domain signature
+
+    For compatibility with pre-3.3.0 versions, the following are synonyms:
+
+     OLD: eval:check_dkim_verified = NEW: eval:check_dkim_valid
+     OLD: eval:check_dkim_signall  = NEW: eval:check_dkim_adsp('A')
+     OLD: eval:check_dkim_signsome = NEW: redundant, semantically always true
+
+    The __DKIM_DEPENDABLE eval rule deserves an explanation. The rule yields
+    true when signatures are supplied by a caller, OR ELSE when signatures
+    are obtained by this plugin AND either there are no signatures OR a rule
+    __TRUNCATED was false. In other words: __DKIM_DEPENDABLE is true when
+    failed signatures can not be attributed to message truncation when
+    feeding a message to SpamAssassin. It can be consulted to prevent false
+    positives on large but truncated messages with poor man's implementation
+    of ADSP by hand-crafted rules.
+
+DESCRIPTION
+    This SpamAssassin plugin implements DKIM lookups as described by the RFC
+    4871, as well as historical DomainKeys lookups, as described by RFC
+    4870, thanks to the support for both types of signatures by newer
+    versions of module Mail::DKIM.
+
+    It requires the "Mail::DKIM" CPAN module to operate. Many thanks to
+    Jason Long for that module.
+
+TAGS
+    The following tags are added to the set, available for use in reports,
+    header fields, other plugins, etc.:
+
+      _DKIMIDENTITY_
+        Agent or User Identifier (AUID) (the 'i' tag) from valid signatures;
+
+      _DKIMDOMAIN_
+        Signing Domain Identifier (SDID) (the 'd' tag) from valid signatures;
+
+    Identities and domains from signatures which failed verification are not
+    included in these tags. Duplicates are eliminated (e.g. when there are
+    two or more valid signatures from the same signer, only one copy makes
+    it into a tag). Note that there may be more than one signature in a
+    message - currently they are provided as a space-separated list,
+    although this behaviour may change.
+
+SEE ALSO
+    "Mail::DKIM", "Mail::SpamAssassin::Plugin"
+
+      http://jason.long.name/dkimproxy/
+      http://tools.ietf.org/rfc/rfc4871.txt
+      http://tools.ietf.org/rfc/rfc4870.txt
+      http://tools.ietf.org/rfc/rfc5617.txt
+      http://ietf.org/html.charters/dkim-charter.html
+
+USER SETTINGS
+    whitelist_from_dkim author@example.com [signing-domain]
+        Works similarly to whitelist_from, except that in addition to
+        matching an author address (From) to the pattern in the first
+        parameter, the message must also carry a Domain Keys Identified Mail
+        (DKIM) signature made by a signing domain (SDID, i.e. the d= tag)
+        that is acceptable to us.
+
+        Only one whitelist entry is allowed per line, as in
+        "whitelist_from_rcvd". Multiple "whitelist_from_dkim" lines are
+        allowed. File-glob style characters are allowed for the From address
+        (the first parameter), just like with "whitelist_from_rcvd". The
+        second parameter does not accept wildcards.
+
+        If no signing-domain parameter is specified, the only acceptable
+        signature will be an Author Domain Signature (sometimes called
+        first-party signature) which is a signature where the signing domain
+        (SDID) of a signature matches the domain of the author's address
+        (i.e. the address in a From header field).
+
+        Since this whitelist requires a DKIM check to be made, network tests
+        must be enabled.
+
+        Examples of whitelisting based on an author domain signature
+        (first-party):
+
+          whitelist_from_dkim joe@example.com
+          whitelist_from_dkim *@corp.example.com
+          whitelist_from_dkim *@*.example.com
+
+        Examples of whitelisting based on third-party signatures:
+
+          whitelist_from_dkim jane@example.net      example.org
+          whitelist_from_dkim rick@info.example.net example.net
+          whitelist_from_dkim *@info.example.net    example.net
+          whitelist_from_dkim *@*                   remailer.example.com
+
+    def_whitelist_from_dkim author@example.com [signing-domain]
+        Same as "whitelist_from_dkim", but used for the default whitelist
+        entries in the SpamAssassin distribution. The whitelist score is
+        lower, because these are often targets for abuse of public mailers
+        which sign their mail.
+
+    unwhitelist_from_dkim author@example.com [signing-domain]
+        Removes an email address with its corresponding signing-domain field
+        from def_whitelist_from_dkim and whitelist_from_dkim tables, if it
+        exists. Parameters to unwhitelist_from_dkim must exactly match the
+        parameters of a corresponding whitelist_from_dkim or
+        def_whitelist_from_dkim config option which created the entry, for
+        it to be removed (a domain name is matched case-insensitively); i.e.
+        if a signing-domain parameter was specified in a whitelisting
+        command, it must also be specified in the unwhitelisting command.
+
+        Useful for removing undesired default entries from a distributed
+        configuration by a local or site-specific configuration or by
+        "user_prefs".
+
+    adsp_override domain [signing-practices]
+        Currently few domains publish their signing practices (RFC 5617 -
+        ADSP), partly because the ADSP rfc is rather new, partly because
+        they think hardly any recipient bothers to check it, and partly for
+        fear that some recipients might lose mail due to problems in their
+        signature validation procedures or mail mangling by mailers beyond
+        their control.
+
+        Nevertheless, recipients could benefit by knowing signing practices
+        of a sending (author's) domain, for example to recognize forged mail
+        claiming to be from certain domains which are popular targets for
+        phishing, like financial institutions. Unfortunately, as signing
+        practices are seldom published or are weak, it is hardly justifiable
+        to look them up in DNS.
+
+        To overcome this chicken-or-the-egg problem, the "adsp_override"
+        mechanism allows recipients using SpamAssassin to override published
+        or defaulted ADSP for certain domains. This makes it possible to
+        manually specify a stronger (or weaker) signing practices than a
+        signing domain is willing to publish (explicitly or by default), and
+        also save on a DNS lookup.
+
+        Note that ADSP (published or overridden) is only consulted for
+        messages which do not contain a valid DKIM signature from the
+        author's domain.
+
+        According to RFC 5617, signing practices can be one of the
+        following: "unknown", "all" and "discardable".
+
+        "unknown": The domain might sign some or all email - messages from
+        the domain may or may not have an Author Domain Signature. This is a
+        default if a domain exists in DNS but no ADSP record is found.
+
+        "all": All mail from the domain is signed with an Author Domain
+        Signature.
+
+        "discardable": All mail from the domain is signed with an Author
+        Domain Signature. Furthermore, if a message arrives without a valid
+        Author Domain Signature, the domain encourages the recipient(s) to
+        discard it.
+
+        ADSP lookup can also determine that a domain is "out of scope",
+        i.e., the domain does not exist (NXDOMAIN) in the DNS.
+
+        To override domain's signing practices in a SpamAssassin
+        configuration file, specify an "adsp_override" directive for each
+        sending domain to be overridden.
+
+        Its first argument is a domain name. Author's domain is matched
+        against it, matching is case insensitive. This is not a regular
+        expression or a file-glob style wildcard, but limited wildcarding is
+        still available: if this argument starts by a "*." (or is a sole
+        "*"), author's domain matches if it is a subdomain (to one or more
+        levels) of the argument. Otherwise (with no leading asterisk) the
+        match must be exact (not a subdomain).
+
+        An optional second parameter is one of the following keywords
+        (case-insensitive): "nxdomain", "unknown", "all", "discardable",
+        "custom_low", "custom_med", "custom_high".
+
+        Absence of this second parameter implies "discardable". If a domain
+        is not listed by a "adsp_override" directive nor does it explicitly
+        publish any ADSP record, then "unknown" is implied for valid
+        domains, and "nxdomain" for domains not existing in DNS. (Note:
+        domain validity is only checked with versions of Mail::DKIM 0.37 or
+        later (actually since 0.36_5), the "nxdomain" would never turn up
+        with older versions).
+
+        The strong setting "discardable" is useful for domains which are
+        known to always sign their mail and to always send it directly to
+        recipients (not to mailing lists), and are frequent targets of
+        fishing attempts, such as financial institutions. The "discardable"
+        is also appropriate for domains which are known never to send any
+        mail.
+
+        When a message does not contain a valid signature by the author's
+        domain (the domain in a From header field), the signing practices
+        pertaining to author's domain determine which of the following rules
+        fire and contributes its score: DKIM_ADSP_NXDOMAIN, DKIM_ADSP_ALL,
+        DKIM_ADSP_DISCARD, DKIM_ADSP_CUSTOM_LOW, DKIM_ADSP_CUSTOM_MED,
+        DKIM_ADSP_CUSTOM_HIGH. Not more than one of these rules can fire for
+        messages that have one author (but see below). The last three can
+        only result from a 'signing-practices' as given in a "adsp_override"
+        directive (not from a DNS lookup), and can serve as a convenient
+        means of providing a different score if scores assigned to
+        DKIM_ADSP_ALL or DKIM_ADSP_DISCARD are not considered suitable for
+        some domains.
+
+        RFC 5322 permits a message to have more than one author - multiple
+        addresses may be listed in a single From header field. RFC 5617
+        defines that a message with multiple authors has multiple signing
+        domain signing practices, but does not prescribe how these should be
+        combined. In presence of multiple signing practices, more than one
+        of the DKIM_ADSP_* rules may fire.
+
+        As a precaution against firing DKIM_ADSP_* rules when there is a
+        known local reason for a signature verification failure, the
+        domain's ADSP is considered 'unknown' when DNS lookups are disabled
+        or a DNS lookup encountered a temporary problem on fetching a public
+        key from the author's domain. Similarly, ADSP is considered
+        'unknown' when this plugin did its own signature verification
+        (signatures were not passed to SA by a caller) and a metarule
+        __TRUNCATED was triggered, indicating the caller intentionally
+        passed a truncated message to SpamAssassin, which was a likely
+        reason for a signature verification failure.
+
+        Example:
+
+          adsp_override *.mydomain.example.com   discardable
+          adsp_override *.neversends.example.com discardable
+
+          adsp_override ebay.com
+          adsp_override *.ebay.com
+          adsp_override ebay.co.uk
+          adsp_override *.ebay.co.uk
+          adsp_override paypal.com
+          adsp_override *.paypal.com
+          adsp_override amazon.com
+          adsp_override ealerts.bankofamerica.com
+          adsp_override americangreetings.com
+          adsp_override egreetings.com
+          adsp_override bluemountain.com
+          adsp_override hallmark.com   all
+          adsp_override *.hallmark.com all
+          adsp_override youtube.com    custom_high
+          adsp_override google.com     custom_low
+          adsp_override gmail.com      custom_low
+          adsp_override googlemail.com custom_low
+          adsp_override yahoo.com      custom_low
+          adsp_override yahoo.com.au   custom_low
+          adsp_override yahoo.se       custom_low
+
+          adsp_override junkmailerkbw0rr.com nxdomain
+          adsp_override junkmailerd2hlsg.com nxdomain
+
+          # effectively disables ADSP network DNS lookups for all other domains:
+          adsp_override *              unknown
+
+          score DKIM_ADSP_ALL          2.5
+          score DKIM_ADSP_DISCARD     25
+          score DKIM_ADSP_NXDOMAIN     3
+
+          score DKIM_ADSP_CUSTOM_LOW   1
+          score DKIM_ADSP_CUSTOM_MED   3.5
+          score DKIM_ADSP_CUSTOM_HIGH  8
+
+ADMINISTRATOR SETTINGS
+    dkim_timeout n (default: 5)
+        How many seconds to wait for a DKIM query to complete, before
+        scanning continues without the DKIM result. A numeric value is
+        optionally suffixed by a time unit (s, m, h, d, w, indicating
+        seconds (default), minutes, hours, days, weeks).
+

Added: spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_DNSEval.html
URL: http://svn.apache.org/viewvc/spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_DNSEval.html?rev=1567225&view=auto
==============================================================================
--- spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_DNSEval.html (added)
+++ spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_DNSEval.html Tue Feb 11 17:26:49 2014
@@ -0,0 +1,40 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<title>DNSEVAL - look up URLs against DNS blocklists</title>
+<link rev="made" href="mailto:root@twm2005-dev.thoughtworthy.com" />
+</head>
+
+<body style="background-color: white">
+
+<p><a name="__index__"></a></p>
+<!-- INDEX BEGIN -->
+
+<ul>
+
+	<li><a href="#name">NAME</a></li>
+</ul>
+<!-- INDEX END -->
+
+<hr />
+<p>
+</p>
+<h1><a name="name">NAME</a></h1>
+<p>DNSEVAL - look up URLs against DNS blocklists</p>
+<dl>
+<dt><strong><a name="item_check_rbl_from_domain">check_rbl_from_domain</a></strong><br />
+</dt>
+<dd>
+This checks all the from addrs domain names as an alternate to check_rbl_from_host
+</dd>
+<p></p>
+<dt><strong><a name="item_has_check_rbl_from_domain">has_check_rbl_from_domain</a></strong><br />
+</dt>
+<dd>
+Adds capability check for ``if can()'' for check_rbl_from_domain
+</dd>
+</dl>
+
+</body>
+
+</html>

Added: spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_DNSEval.txt
URL: http://svn.apache.org/viewvc/spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_DNSEval.txt?rev=1567225&view=auto
==============================================================================
--- spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_DNSEval.txt (added)
+++ spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_DNSEval.txt Tue Feb 11 17:26:49 2014
@@ -0,0 +1,10 @@
+NAME
+    DNSEVAL - look up URLs against DNS blocklists
+
+    check_rbl_from_domain
+        This checks all the from addrs domain names as an alternate to
+        check_rbl_from_host
+
+    has_check_rbl_from_domain
+        Adds capability check for "if can()" for check_rbl_from_domain
+

Added: spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_Hashcash.html
URL: http://svn.apache.org/viewvc/spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_Hashcash.html?rev=1567225&view=auto
==============================================================================
--- spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_Hashcash.html (added)
+++ spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_Hashcash.html Tue Feb 11 17:26:49 2014
@@ -0,0 +1,99 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<title>Mail::SpamAssassin::Plugin::Hashcash - perform hashcash verification tests</title>
+<link rev="made" href="mailto:root@twm2005-dev.thoughtworthy.com" />
+</head>
+
+<body style="background-color: white">
+
+<p><a name="__index__"></a></p>
+<!-- INDEX BEGIN -->
+
+<ul>
+
+	<li><a href="#name">NAME</a></li>
+	<li><a href="#synopsis">SYNOPSIS</a></li>
+	<li><a href="#description">DESCRIPTION</a></li>
+	<li><a href="#user_settings">USER SETTINGS</a></li>
+</ul>
+<!-- INDEX END -->
+
+<hr />
+<p>
+</p>
+<h1><a name="name">NAME</a></h1>
+<p>Mail::SpamAssassin::Plugin::Hashcash - perform hashcash verification tests</p>
+<p>
+</p>
+<hr />
+<h1><a name="synopsis">SYNOPSIS</a></h1>
+<pre>
+  loadplugin     Mail::SpamAssassin::Plugin::Hashcash</pre>
+<p>
+</p>
+<hr />
+<h1><a name="description">DESCRIPTION</a></h1>
+<p>Hashcash is a payment system for email where CPU cycles used as the
+basis for an e-cash system.  This plugin makes it possible to use valid
+hashcash tokens added by mail programs as a bonus for messages.</p>
+<p>
+</p>
+<hr />
+<h1><a name="user_settings">USER SETTINGS</a></h1>
+<dl>
+<dt><strong><a name="item_use_hashcash__7b_1__7c_0__7d__28default_3a_1_29">use_hashcash { 1 | 0 }   (default: 1)</a></strong><br />
+</dt>
+<dd>
+Whether to use hashcash, if it is available.
+</dd>
+<p></p>
+<dt><strong><a name="item_hashcash_accept_user_40example_2ecom__2e_2e_2e">hashcash_accept <a href="mailto:user@example.com">user@example.com</a> ...</a></strong><br />
+</dt>
+<dd>
+Used to specify addresses that we accept HashCash tokens for.  You should set
+it to match all the addresses that you may receive mail at.
+</dd>
+<dd>
+<p>Like whitelist and blacklist entries, the addresses are file-glob-style
+patterns, so <code>friend@somewhere.com</code>, <code>*@isp.com</code>, or <code>*.domain.net</code> will all
+work.  Specifically, <code>*</code> and <code>?</code> are allowed, but all other metacharacters
+are not.  Regular expressions are not used for security reasons.</p>
+</dd>
+<dd>
+<p>The sequence <code>%u</code> is replaced with the current user's username, which
+is useful for ISPs or multi-user domains.</p>
+</dd>
+<dd>
+<p>Multiple addresses per line, separated by spaces, is OK.  Multiple
+<code>hashcash_accept</code> lines is also OK.</p>
+</dd>
+<p></p>
+<dt><strong><a name="item_file">hashcash_doublespend_path /path/to/file   (default: ~/.spamassassin/hashcash_seen)</a></strong><br />
+</dt>
+<dd>
+Path for HashCash double-spend database.  HashCash tokens are only usable once,
+so their use is tracked in this database to avoid providing a loophole.
+</dd>
+<dd>
+<p>By default, each user has their own, in their <code>~/.spamassassin</code> directory with
+mode 0700/0600.  Note that once a token is 'spent' it is written to this file,
+and double-spending of a hashcash token makes it invalid, so this is not
+suitable for sharing between multiple users.</p>
+</dd>
+<p></p>
+<dt><strong><a name="item_hashcash_doublespend_file_mode">hashcash_doublespend_file_mode            (default: 0700)</a></strong><br />
+</dt>
+<dd>
+The file mode bits used for the HashCash double-spend database file.
+</dd>
+<dd>
+<p>Make sure you specify this using the 'x' mode bits set, as it may also be used
+to create directories.  However, if a file is created, the resulting file will
+not have any execute bits set (the umask is set to 111).</p>
+</dd>
+<p></p></dl>
+
+</body>
+
+</html>

Added: spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_Hashcash.txt
URL: http://svn.apache.org/viewvc/spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_Hashcash.txt?rev=1567225&view=auto
==============================================================================
--- spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_Hashcash.txt (added)
+++ spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_Hashcash.txt Tue Feb 11 17:26:49 2014
@@ -0,0 +1,53 @@
+NAME
+    Mail::SpamAssassin::Plugin::Hashcash - perform hashcash verification
+    tests
+
+SYNOPSIS
+      loadplugin     Mail::SpamAssassin::Plugin::Hashcash
+
+DESCRIPTION
+    Hashcash is a payment system for email where CPU cycles used as the
+    basis for an e-cash system. This plugin makes it possible to use valid
+    hashcash tokens added by mail programs as a bonus for messages.
+
+USER SETTINGS
+    use_hashcash { 1 | 0 } (default: 1)
+        Whether to use hashcash, if it is available.
+
+    hashcash_accept user@example.com ...
+        Used to specify addresses that we accept HashCash tokens for. You
+        should set it to match all the addresses that you may receive mail
+        at.
+
+        Like whitelist and blacklist entries, the addresses are
+        file-glob-style patterns, so "friend@somewhere.com", "*@isp.com", or
+        "*.domain.net" will all work. Specifically, "*" and "?" are allowed,
+        but all other metacharacters are not. Regular expressions are not
+        used for security reasons.
+
+        The sequence %u is replaced with the current user's username, which
+        is useful for ISPs or multi-user domains.
+
+        Multiple addresses per line, separated by spaces, is OK. Multiple
+        "hashcash_accept" lines is also OK.
+
+    hashcash_doublespend_path /path/to/file (default:
+    ~/.spamassassin/hashcash_seen)
+        Path for HashCash double-spend database. HashCash tokens are only
+        usable once, so their use is tracked in this database to avoid
+        providing a loophole.
+
+        By default, each user has their own, in their "~/.spamassassin"
+        directory with mode 0700/0600. Note that once a token is 'spent' it
+        is written to this file, and double-spending of a hashcash token
+        makes it invalid, so this is not suitable for sharing between
+        multiple users.
+
+    hashcash_doublespend_file_mode (default: 0700)
+        The file mode bits used for the HashCash double-spend database file.
+
+        Make sure you specify this using the 'x' mode bits set, as it may
+        also be used to create directories. However, if a file is created,
+        the resulting file will not have any execute bits set (the umask is
+        set to 111).
+

Added: spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_MIMEHeader.html
URL: http://svn.apache.org/viewvc/spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_MIMEHeader.html?rev=1567225&view=auto
==============================================================================
--- spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_MIMEHeader.html (added)
+++ spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_MIMEHeader.html Tue Feb 11 17:26:49 2014
@@ -0,0 +1,71 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<title>MIMEHeader - perform regexp tests against MIME headers</title>
+<link rev="made" href="mailto:root@twm2005-dev.thoughtworthy.com" />
+</head>
+
+<body style="background-color: white">
+
+<p><a name="__index__"></a></p>
+<!-- INDEX BEGIN -->
+
+<ul>
+
+	<li><a href="#name">NAME</a></li>
+	<li><a href="#synopsis">SYNOPSIS</a></li>
+	<li><a href="#description">DESCRIPTION</a></li>
+	<li><a href="#rule_definitions_and_privileged_settings">RULE DEFINITIONS AND PRIVILEGED SETTINGS</a></li>
+</ul>
+<!-- INDEX END -->
+
+<hr />
+<p>
+</p>
+<h1><a name="name">NAME</a></h1>
+<p>MIMEHeader - perform regexp tests against MIME headers</p>
+<p>
+</p>
+<hr />
+<h1><a name="synopsis">SYNOPSIS</a></h1>
+<pre>
+  loadplugin    Mail::SpamAssassin::Plugin::MIMEHeader
+  mimeheader    NAME_OF_RULE    Content-Id =~ /foo/</pre>
+<p>
+</p>
+<hr />
+<h1><a name="description">DESCRIPTION</a></h1>
+<p>This plugin allows regexp rules to be written against MIME headers in the
+message.</p>
+<p>
+</p>
+<hr />
+<h1><a name="rule_definitions_and_privileged_settings">RULE DEFINITIONS AND PRIVILEGED SETTINGS</a></h1>
+<dl>
+<dt><strong><a name="item_mimeheader_name_of_rule_header_2dname__3d_7e__2fpa">mimeheader NAME_OF_RULE Header-Name =~ /pattern/modifiers</a></strong><br />
+</dt>
+<dd>
+Specify a rule.  <code>NAME_OF_RULE</code> is the name of the rule to be used,
+<code>Header-Name</code> is the name of the MIME header to check, and
+<code>/pattern/modifiers</code> is the Perl regular expression to match against this.
+</dd>
+<dd>
+<p>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.</p>
+</dd>
+<dd>
+<p>Header names are considered case-insensitive.</p>
+</dd>
+<dd>
+<p>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 <code>:raw</code> to the header name to retrieve the raw, undecoded value,
+including pristine whitespace, instead.</p>
+</dd>
+<p></p></dl>
+
+</body>
+
+</html>

Added: spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_MIMEHeader.txt
URL: http://svn.apache.org/viewvc/spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_MIMEHeader.txt?rev=1567225&view=auto
==============================================================================
--- spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_MIMEHeader.txt (added)
+++ spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_MIMEHeader.txt Tue Feb 11 17:26:49 2014
@@ -0,0 +1,31 @@
+NAME
+    MIMEHeader - perform regexp tests against MIME headers
+
+SYNOPSIS
+      loadplugin    Mail::SpamAssassin::Plugin::MIMEHeader
+      mimeheader    NAME_OF_RULE    Content-Id =~ /foo/
+
+DESCRIPTION
+    This plugin allows regexp rules to be written against MIME headers in
+    the message.
+
+RULE DEFINITIONS AND PRIVILEGED SETTINGS
+    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.
+

Added: spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_NetCache.html
URL: http://svn.apache.org/viewvc/spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_NetCache.html?rev=1567225&view=auto
==============================================================================
--- spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_NetCache.html (added)
+++ spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_NetCache.html Tue Feb 11 17:26:49 2014
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<title>Mail::SpamAssassin::Plugin::NetCache - store network check results in headers</title>
+<link rev="made" href="mailto:root@twm2005-dev.thoughtworthy.com" />
+</head>
+
+<body style="background-color: white">
+
+<p><a name="__index__"></a></p>
+<!-- INDEX BEGIN -->
+
+<ul>
+
+	<li><a href="#name">NAME</a></li>
+	<li><a href="#synopsis">SYNOPSIS</a></li>
+	<li><a href="#description">DESCRIPTION</a></li>
+</ul>
+<!-- INDEX END -->
+
+<hr />
+<p>
+</p>
+<h1><a name="name">NAME</a></h1>
+<p>Mail::SpamAssassin::Plugin::NetCache - store network check results in headers</p>
+<p>
+</p>
+<hr />
+<h1><a name="synopsis">SYNOPSIS</a></h1>
+<pre>
+  loadplugin     Mail::SpamAssassin::Plugin::NetCache</pre>
+<p>
+</p>
+<hr />
+<h1><a name="description">DESCRIPTION</a></h1>
+<p>This is a work-in-progress experimental plugin not for general use.</p>
+<p>This plugin stores network check results in the message header.  The
+idea is to store all results (positive and negative) in the headers,
+then during mass-check, pull the results out and use them for ``live''
+data to give better results during SpamAssassin score generation.</p>
+<p>This needs more plugin hooks as appropriate, needs code to put results
+in header and to pull results back out from said headers, etc.</p>
+<p>To try this plugin, write the above two lines in the synopsis to
+<code>/etc/mail/spamassassin/plugintest.cf</code>.</p>
+
+</body>
+
+</html>

Added: spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_NetCache.txt
URL: http://svn.apache.org/viewvc/spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_NetCache.txt?rev=1567225&view=auto
==============================================================================
--- spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_NetCache.txt (added)
+++ spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_NetCache.txt Tue Feb 11 17:26:49 2014
@@ -0,0 +1,21 @@
+NAME
+    Mail::SpamAssassin::Plugin::NetCache - store network check results in
+    headers
+
+SYNOPSIS
+      loadplugin     Mail::SpamAssassin::Plugin::NetCache
+
+DESCRIPTION
+    This is a work-in-progress experimental plugin not for general use.
+
+    This plugin stores network check results in the message header. The idea
+    is to store all results (positive and negative) in the headers, then
+    during mass-check, pull the results out and use them for "live" data to
+    give better results during SpamAssassin score generation.
+
+    This needs more plugin hooks as appropriate, needs code to put results
+    in header and to pull results back out from said headers, etc.
+
+    To try this plugin, write the above two lines in the synopsis to
+    "/etc/mail/spamassassin/plugintest.cf".
+

Added: spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_OneLineBodyRuleType.html
URL: http://svn.apache.org/viewvc/spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_OneLineBodyRuleType.html?rev=1567225&view=auto
==============================================================================
--- spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_OneLineBodyRuleType.html (added)
+++ spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_OneLineBodyRuleType.html Tue Feb 11 17:26:49 2014
@@ -0,0 +1,27 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<title>Mail::SpamAssassin::Plugin::OneLineBodyRuleType - spamassassin body test plugin</title>
+<link rev="made" href="mailto:root@twm2005-dev.thoughtworthy.com" />
+</head>
+
+<body style="background-color: white">
+
+<p><a name="__index__"></a></p>
+<!-- INDEX BEGIN -->
+
+<ul>
+
+	<li><a href="#name">NAME</a></li>
+</ul>
+<!-- INDEX END -->
+
+<hr />
+<p>
+</p>
+<h1><a name="name">NAME</a></h1>
+<p>Mail::SpamAssassin::Plugin::OneLineBodyRuleType - spamassassin body test plugin</p>
+
+</body>
+
+</html>

Added: spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_OneLineBodyRuleType.txt
URL: http://svn.apache.org/viewvc/spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_OneLineBodyRuleType.txt?rev=1567225&view=auto
==============================================================================
--- spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_OneLineBodyRuleType.txt (added)
+++ spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_OneLineBodyRuleType.txt Tue Feb 11 17:26:49 2014
@@ -0,0 +1,4 @@
+NAME
+    Mail::SpamAssassin::Plugin::OneLineBodyRuleType - spamassassin body test
+    plugin
+

Added: spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_PhishTag.html
URL: http://svn.apache.org/viewvc/spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_PhishTag.html?rev=1567225&view=auto
==============================================================================
--- spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_PhishTag.html (added)
+++ spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_PhishTag.html Tue Feb 11 17:26:49 2014
@@ -0,0 +1,100 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<title>PhishTag - SpamAssassin plugin for redirecting links in incoming emails.</title>
+<link rev="made" href="mailto:root@twm2005-dev.thoughtworthy.com" />
+</head>
+
+<body style="background-color: white">
+
+<p><a name="__index__"></a></p>
+<!-- INDEX BEGIN -->
+
+<ul>
+
+	<li><a href="#name">NAME</a></li>
+	<li><a href="#synopsis">SYNOPSIS</a></li>
+	<li><a href="#description">DESCRIPTION</a></li>
+	<li><a href="#options">OPTIONS</a></li>
+	<li><a href="#download">DOWNLOAD</a></li>
+	<li><a href="#see_also">SEE ALSO</a></li>
+	<li><a href="#author">AUTHOR</a></li>
+	<li><a href="#copyright_and_license">COPYRIGHT AND LICENSE</a></li>
+</ul>
+<!-- INDEX END -->
+
+<hr />
+<p>
+</p>
+<h1><a name="name">NAME</a></h1>
+<p>PhishTag - SpamAssassin plugin for redirecting links in incoming emails.</p>
+<p>
+</p>
+<hr />
+<h1><a name="synopsis">SYNOPSIS</a></h1>
+<pre>
+ loadplugin     Mail::SpamAssassin::Plugin::PhishTag</pre>
+<pre>
+ trigger_ratio    0.1
+ trigger_target   RULE_NAME  <a href="http://www.antiphishing.org/consumer_recs.html">http://www.antiphishing.org/consumer_recs.html</a></pre>
+<p>
+</p>
+<hr />
+<h1><a name="description">DESCRIPTION</a></h1>
+<p>PhishTag enables administrators to rewrite links in emails that trigger certain
+tests, preferably anti-phishing blacklist tests. The plugin will inhibit the
+blocking of a portion of the emails that trigger the test by SpamAssassin, and
+let them pass to the users' inbox after the rewrite. It is useful in providing
+training to email users about company policies and general email usage.</p>
+<p>
+</p>
+<hr />
+<h1><a name="options">OPTIONS</a></h1>
+<p>The following options can be set by modifying the configuration file.</p>
+<ul>
+<li><strong><a name="item_trigger_ratio_percentage_value">trigger_ratio percentage_value</a></strong><br />
+</li>
+Sets the probability in percentage that a positive test will trigger the 
+email rewrite, e.g. 0.1 will rewrite on the average 1 in 1000 emails that 
+match the trigger.
+<p></p>
+<li><strong><a name="item_trigger_target_rule_name_http_url">trigger_target RULE_NAME http_url</a></strong><br />
+</li>
+The name of the test which would trigger the email rewrite; all the URLs 
+will be replaced by http_url.
+<p></p></ul>
+<p>
+</p>
+<hr />
+<h1><a name="download">DOWNLOAD</a></h1>
+<p>The source of this plugin is avaliable at: 
+<a href="http://umut.topkara.org/PhishTag/PhishTag.pm">http://umut.topkara.org/PhishTag/PhishTag.pm</a>
+a sample configuration file is also available:
+<a href="http://umut.topkara.org/PhishTag/PhishTag.cf">http://umut.topkara.org/PhishTag/PhishTag.cf</a></p>
+<p>
+</p>
+<hr />
+<h1><a name="see_also">SEE ALSO</a></h1>
+<p>Check the list of tests performed by SpamAssassin to modify the
+configuration file to match your needs from 
+<a href="http://spamassassin.apache.org/tests.html">http://spamassassin.apache.org/tests.html</a></p>
+<p>
+</p>
+<hr />
+<h1><a name="author">AUTHOR</a></h1>
+<p>Umut Topkara, 2008, &lt;<a href="mailto:umut@topkara.org">umut@topkara.org</a>&gt;
+<a href="http://umut.topkara.org">http://umut.topkara.org</a></p>
+<p>
+</p>
+<hr />
+<h1><a name="copyright_and_license">COPYRIGHT AND LICENSE</a></h1>
+<p>This plugin is free software; you can redistribute it and/or modify
+it under the same terms as SpamAssassin itself, either version 3.2.4 
+or, at your option, any later version of SpamAssassin you may have 
+available.
+
+</p>
+
+</body>
+
+</html>

Added: spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_PhishTag.txt
URL: http://svn.apache.org/viewvc/spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_PhishTag.txt?rev=1567225&view=auto
==============================================================================
--- spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_PhishTag.txt (added)
+++ spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_PhishTag.txt Tue Feb 11 17:26:49 2014
@@ -0,0 +1,47 @@
+NAME
+    PhishTag - SpamAssassin plugin for redirecting links in incoming emails.
+
+SYNOPSIS
+     loadplugin     Mail::SpamAssassin::Plugin::PhishTag
+
+     trigger_ratio    0.1
+     trigger_target   RULE_NAME  http://www.antiphishing.org/consumer_recs.html
+
+DESCRIPTION
+    PhishTag enables administrators to rewrite links in emails that trigger
+    certain tests, preferably anti-phishing blacklist tests. The plugin will
+    inhibit the blocking of a portion of the emails that trigger the test by
+    SpamAssassin, and let them pass to the users' inbox after the rewrite.
+    It is useful in providing training to email users about company policies
+    and general email usage.
+
+OPTIONS
+    The following options can be set by modifying the configuration file.
+
+    * trigger_ratio percentage_value
+        Sets the probability in percentage that a positive test will trigger
+        the email rewrite, e.g. 0.1 will rewrite on the average 1 in 1000
+        emails that match the trigger.
+
+    * trigger_target RULE_NAME http_url
+        The name of the test which would trigger the email rewrite; all the
+        URLs will be replaced by http_url.
+
+DOWNLOAD
+    The source of this plugin is avaliable at:
+    http://umut.topkara.org/PhishTag/PhishTag.pm a sample configuration file
+    is also available: http://umut.topkara.org/PhishTag/PhishTag.cf
+
+SEE ALSO
+    Check the list of tests performed by SpamAssassin to modify the
+    configuration file to match your needs from
+    http://spamassassin.apache.org/tests.html
+
+AUTHOR
+    Umut Topkara, 2008, <um...@topkara.org> http://umut.topkara.org
+
+COPYRIGHT AND LICENSE
+    This plugin is free software; you can redistribute it and/or modify it
+    under the same terms as SpamAssassin itself, either version 3.2.4 or, at
+    your option, any later version of SpamAssassin you may have available.
+

Added: spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_Pyzor.html
URL: http://svn.apache.org/viewvc/spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_Pyzor.html?rev=1567225&view=auto
==============================================================================
--- spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_Pyzor.html (added)
+++ spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_Pyzor.html Tue Feb 11 17:26:49 2014
@@ -0,0 +1,116 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<title>Mail::SpamAssassin::Plugin::Pyzor - perform Pyzor check of messages</title>
+<link rev="made" href="mailto:root@twm2005-dev.thoughtworthy.com" />
+</head>
+
+<body style="background-color: white">
+
+<p><a name="__index__"></a></p>
+<!-- INDEX BEGIN -->
+
+<ul>
+
+	<li><a href="#name">NAME</a></li>
+	<li><a href="#synopsis">SYNOPSIS</a></li>
+	<li><a href="#description">DESCRIPTION</a></li>
+	<li><a href="#user_options">USER OPTIONS</a></li>
+	<li><a href="#administrator_options">ADMINISTRATOR OPTIONS</a></li>
+</ul>
+<!-- INDEX END -->
+
+<hr />
+<p>
+</p>
+<h1><a name="name">NAME</a></h1>
+<p>Mail::SpamAssassin::Plugin::Pyzor - perform Pyzor check of messages</p>
+<p>
+</p>
+<hr />
+<h1><a name="synopsis">SYNOPSIS</a></h1>
+<pre>
+  loadplugin     Mail::SpamAssassin::Plugin::Pyzor</pre>
+<p>
+</p>
+<hr />
+<h1><a name="description">DESCRIPTION</a></h1>
+<p>Pyzor is a collaborative, networked system to detect and block spam
+using identifying digests of messages.</p>
+<p>See <a href="http://pyzor.sourceforge.net/">http://pyzor.sourceforge.net/</a> for more information about Pyzor.</p>
+<p>
+</p>
+<hr />
+<h1><a name="user_options">USER OPTIONS</a></h1>
+<dl>
+<dt><strong><a name="item_use_pyzor">use_pyzor (0|1)		(default: 1)</a></strong><br />
+</dt>
+<dd>
+Whether to use Pyzor, if it is available.
+</dd>
+<p></p>
+<dt><strong><a name="item_number">pyzor_max NUMBER		(default: 5)</a></strong><br />
+</dt>
+<dd>
+This option sets how often a message's body checksum must have been
+reported to the Pyzor server before SpamAssassin will consider the Pyzor
+check as matched.
+</dd>
+<dd>
+<p>As most clients should not be auto-reporting these checksums, you should
+set this to a relatively low value, e.g. <code>5</code>.</p>
+</dd>
+<p></p></dl>
+<p>
+</p>
+<hr />
+<h1><a name="administrator_options">ADMINISTRATOR OPTIONS</a></h1>
+<dl>
+<dt><strong><a name="item_n">pyzor_timeout n		(default: 3.5)</a></strong><br />
+</dt>
+<dd>
+How many seconds you wait for Pyzor to complete, before scanning continues
+without the Pyzor results. A numeric value is optionally suffixed by a
+time unit (s, m, h, d, w, indicating seconds (default), minutes, hours,
+days, weeks).
+</dd>
+<dd>
+<p>You can configure Pyzor to have its own per-server timeout.  Set this
+plugin's timeout with that in mind.  This plugin's timeout is a maximum
+ceiling.  If Pyzor takes longer than this to complete its communication
+with all servers, no results are used by SpamAssassin.</p>
+</dd>
+<dd>
+<p>Pyzor servers do not yet synchronize their servers, so it can be
+beneficial to check and report to more than one.  See the pyzor-users
+mailing list for alternate servers that are not published via
+'pyzor discover'.</p>
+</dd>
+<dd>
+<p>If you are using multiple Pyzor servers, a good rule of thumb would be to
+set the SpamAssassin plugin's timeout to be the same or just a bit more
+than the per-server Pyzor timeout (e.g., 3.5 and 2 for two Pyzor servers).
+If more than one of your Pyzor servers is always timing out, consider
+removing one of them.</p>
+</dd>
+<p></p>
+<dt><strong><a name="item_pyzor_options_options">pyzor_options options</a></strong><br />
+</dt>
+<dd>
+Specify additional options to the <code>pyzor(1)</code> command. Please note that only
+characters in the range [0-9A-Za-z ,._/-] are allowed for security reasons.
+</dd>
+<p></p>
+<dt><strong><a name="item_pyzor_path_string">pyzor_path STRING</a></strong><br />
+</dt>
+<dd>
+This option tells SpamAssassin specifically where to find the <code>pyzor</code>
+client instead of relying on SpamAssassin to find it in the current
+PATH.  Note that if <em>taint mode</em> is enabled in the Perl interpreter,
+you should use this, as the current PATH will have been cleared.
+</dd>
+<p></p></dl>
+
+</body>
+
+</html>

Added: spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_Pyzor.txt
URL: http://svn.apache.org/viewvc/spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_Pyzor.txt?rev=1567225&view=auto
==============================================================================
--- spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_Pyzor.txt (added)
+++ spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_Pyzor.txt Tue Feb 11 17:26:49 2014
@@ -0,0 +1,59 @@
+NAME
+    Mail::SpamAssassin::Plugin::Pyzor - perform Pyzor check of messages
+
+SYNOPSIS
+      loadplugin     Mail::SpamAssassin::Plugin::Pyzor
+
+DESCRIPTION
+    Pyzor is a collaborative, networked system to detect and block spam
+    using identifying digests of messages.
+
+    See http://pyzor.sourceforge.net/ for more information about Pyzor.
+
+USER OPTIONS
+    use_pyzor (0|1) (default: 1)
+        Whether to use Pyzor, if it is available.
+
+    pyzor_max NUMBER (default: 5)
+        This option sets how often a message's body checksum must have been
+        reported to the Pyzor server before SpamAssassin will consider the
+        Pyzor check as matched.
+
+        As most clients should not be auto-reporting these checksums, you
+        should set this to a relatively low value, e.g. 5.
+
+ADMINISTRATOR OPTIONS
+    pyzor_timeout n (default: 3.5)
+        How many seconds you wait for Pyzor to complete, before scanning
+        continues without the Pyzor results. A numeric value is optionally
+        suffixed by a time unit (s, m, h, d, w, indicating seconds
+        (default), minutes, hours, days, weeks).
+
+        You can configure Pyzor to have its own per-server timeout. Set this
+        plugin's timeout with that in mind. This plugin's timeout is a
+        maximum ceiling. If Pyzor takes longer than this to complete its
+        communication with all servers, no results are used by SpamAssassin.
+
+        Pyzor servers do not yet synchronize their servers, so it can be
+        beneficial to check and report to more than one. See the pyzor-users
+        mailing list for alternate servers that are not published via 'pyzor
+        discover'.
+
+        If you are using multiple Pyzor servers, a good rule of thumb would
+        be to set the SpamAssassin plugin's timeout to be the same or just a
+        bit more than the per-server Pyzor timeout (e.g., 3.5 and 2 for two
+        Pyzor servers). If more than one of your Pyzor servers is always
+        timing out, consider removing one of them.
+
+    pyzor_options options
+        Specify additional options to the pyzor(1) command. Please note that
+        only characters in the range [0-9A-Za-z ,._/-] are allowed for
+        security reasons.
+
+    pyzor_path STRING
+        This option tells SpamAssassin specifically where to find the
+        "pyzor" client instead of relying on SpamAssassin to find it in the
+        current PATH. Note that if *taint mode* is enabled in the Perl
+        interpreter, you should use this, as the current PATH will have been
+        cleared.
+

Added: spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_Razor2.html
URL: http://svn.apache.org/viewvc/spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_Razor2.html?rev=1567225&view=auto
==============================================================================
--- spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_Razor2.html (added)
+++ spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_Razor2.html Tue Feb 11 17:26:49 2014
@@ -0,0 +1,76 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<title>Mail::SpamAssassin::Plugin::Razor2 - perform Razor check of messages</title>
+<link rev="made" href="mailto:root@twm2005-dev.thoughtworthy.com" />
+</head>
+
+<body style="background-color: white">
+
+<p><a name="__index__"></a></p>
+<!-- INDEX BEGIN -->
+
+<ul>
+
+	<li><a href="#name">NAME</a></li>
+	<li><a href="#synopsis">SYNOPSIS</a></li>
+	<li><a href="#description">DESCRIPTION</a></li>
+	<li><a href="#user_settings">USER SETTINGS</a></li>
+	<li><a href="#administrator_settings">ADMINISTRATOR SETTINGS</a></li>
+</ul>
+<!-- INDEX END -->
+
+<hr />
+<p>
+</p>
+<h1><a name="name">NAME</a></h1>
+<p>Mail::SpamAssassin::Plugin::Razor2 - perform Razor check of messages</p>
+<p>
+</p>
+<hr />
+<h1><a name="synopsis">SYNOPSIS</a></h1>
+<pre>
+  loadplugin     Mail::SpamAssassin::Plugin::Razor2</pre>
+<p>
+</p>
+<hr />
+<h1><a name="description">DESCRIPTION</a></h1>
+<p>Vipul's Razor is a distributed, collaborative, spam detection and
+filtering network based on user submissions of spam.  Detection is done
+with signatures that efficiently spot mutating spam content and user
+input is validated through reputation assignments.</p>
+<p>See <a href="http://razor.sourceforge.net/">http://razor.sourceforge.net/</a> for more information about Razor.</p>
+<p>
+</p>
+<hr />
+<h1><a name="user_settings">USER SETTINGS</a></h1>
+<dl>
+<dt><strong><a name="item_use_razor2">use_razor2 (0|1)		(default: 1)</a></strong><br />
+</dt>
+<dd>
+Whether to use Razor2, if it is available.
+</dd>
+<p></p></dl>
+<p>
+</p>
+<hr />
+<h1><a name="administrator_settings">ADMINISTRATOR SETTINGS</a></h1>
+<dl>
+<dt><strong><a name="item_n">razor_timeout n		(default: 5)</a></strong><br />
+</dt>
+<dd>
+How many seconds you wait for Razor to complete before you go on without
+the results
+</dd>
+<p></p>
+<dt><strong><a name="item_razor_config_filename">razor_config filename</a></strong><br />
+</dt>
+<dd>
+Define the filename used to store Razor's configuration settings.
+Currently this is left to Razor to decide.
+</dd>
+<p></p></dl>
+
+</body>
+
+</html>

Added: spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_Razor2.txt
URL: http://svn.apache.org/viewvc/spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_Razor2.txt?rev=1567225&view=auto
==============================================================================
--- spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_Razor2.txt (added)
+++ spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_Razor2.txt Tue Feb 11 17:26:49 2014
@@ -0,0 +1,27 @@
+NAME
+    Mail::SpamAssassin::Plugin::Razor2 - perform Razor check of messages
+
+SYNOPSIS
+      loadplugin     Mail::SpamAssassin::Plugin::Razor2
+
+DESCRIPTION
+    Vipul's Razor is a distributed, collaborative, spam detection and
+    filtering network based on user submissions of spam. Detection is done
+    with signatures that efficiently spot mutating spam content and user
+    input is validated through reputation assignments.
+
+    See http://razor.sourceforge.net/ for more information about Razor.
+
+USER SETTINGS
+    use_razor2 (0|1) (default: 1)
+        Whether to use Razor2, if it is available.
+
+ADMINISTRATOR SETTINGS
+    razor_timeout n (default: 5)
+        How many seconds you wait for Razor to complete before you go on
+        without the results
+
+    razor_config filename
+        Define the filename used to store Razor's configuration settings.
+        Currently this is left to Razor to decide.
+

Added: spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_RelayCountry.html
URL: http://svn.apache.org/viewvc/spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_RelayCountry.html?rev=1567225&view=auto
==============================================================================
--- spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_RelayCountry.html (added)
+++ spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_RelayCountry.html Tue Feb 11 17:26:49 2014
@@ -0,0 +1,50 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<title>RelayCountry - add message metadata indicating the country code of each relay</title>
+<link rev="made" href="mailto:root@twm2005-dev.thoughtworthy.com" />
+</head>
+
+<body style="background-color: white">
+
+<p><a name="__index__"></a></p>
+<!-- INDEX BEGIN -->
+
+<ul>
+
+	<li><a href="#name">NAME</a></li>
+	<li><a href="#synopsis">SYNOPSIS</a></li>
+	<li><a href="#description">DESCRIPTION</a></li>
+	<li><a href="#requirement">REQUIREMENT</a></li>
+</ul>
+<!-- INDEX END -->
+
+<hr />
+<p>
+</p>
+<h1><a name="name">NAME</a></h1>
+<p>RelayCountry - add message metadata indicating the country code of each relay</p>
+<p>
+</p>
+<hr />
+<h1><a name="synopsis">SYNOPSIS</a></h1>
+<pre>
+  loadplugin     Mail::SpamAssassin::Plugin::RelayCountry</pre>
+<p>
+</p>
+<hr />
+<h1><a name="description">DESCRIPTION</a></h1>
+<p>The RelayCountry plugin attempts to determine the domain country codes
+of each relay used in the delivery path of messages and add that information
+to the message metadata as ``X-Relay-Countries'', or the <code>_RELAYCOUNTRY_</code>
+header markup.</p>
+<p>
+</p>
+<hr />
+<h1><a name="requirement">REQUIREMENT</a></h1>
+<p>This plugin requires the Geo::IP module from CPAN. For backward
+compatibility IP::Country::Fast is used if Geo::IP is not installed.</p>
+
+</body>
+
+</html>

Added: spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_RelayCountry.txt
URL: http://svn.apache.org/viewvc/spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_RelayCountry.txt?rev=1567225&view=auto
==============================================================================
--- spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_RelayCountry.txt (added)
+++ spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_RelayCountry.txt Tue Feb 11 17:26:49 2014
@@ -0,0 +1,17 @@
+NAME
+    RelayCountry - add message metadata indicating the country code of each
+    relay
+
+SYNOPSIS
+      loadplugin     Mail::SpamAssassin::Plugin::RelayCountry
+
+DESCRIPTION
+    The RelayCountry plugin attempts to determine the domain country codes
+    of each relay used in the delivery path of messages and add that
+    information to the message metadata as "X-Relay-Countries", or the
+    "_RELAYCOUNTRY_" header markup.
+
+REQUIREMENT
+    This plugin requires the Geo::IP module from CPAN. For backward
+    compatibility IP::Country::Fast is used if Geo::IP is not installed.
+

Added: spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_ReplaceTags.html
URL: http://svn.apache.org/viewvc/spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_ReplaceTags.html?rev=1567225&view=auto
==============================================================================
--- spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_ReplaceTags.html (added)
+++ spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_ReplaceTags.html Tue Feb 11 17:26:49 2014
@@ -0,0 +1,108 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<title>Mail::SpamAssassin::Plugin::ReplaceTags - tags for SpamAssassin rules</title>
+<link rev="made" href="mailto:root@twm2005-dev.thoughtworthy.com" />
+</head>
+
+<body style="background-color: white">
+
+<p><a name="__index__"></a></p>
+<!-- INDEX BEGIN -->
+
+<ul>
+
+	<li><a href="#name">NAME</a></li>
+	<li><a href="#synopsis">SYNOPSIS</a></li>
+	<li><a href="#rule_definitions_and_privileged_settings">RULE DEFINITIONS AND PRIVILEGED SETTINGS</a></li>
+</ul>
+<!-- INDEX END -->
+
+<hr />
+<p>
+</p>
+<h1><a name="name">NAME</a></h1>
+<p>Mail::SpamAssassin::Plugin::ReplaceTags - tags for SpamAssassin rules</p>
+<p>The plugin allows rules to contain regular expression tags to be used in
+regular expression rules.  The tags make it much easier to maintain
+complicated rules.</p>
+<p>Warning: This plugin relies on data structures specific to this version of
+SpamAssasin; it is not guaranteed to work with other versions of SpamAssassin.</p>
+<p>
+</p>
+<hr />
+<h1><a name="synopsis">SYNOPSIS</a></h1>
+<pre>
+  loadplugin    Mail::SpamAssassin::Plugin::ReplaceTags</pre>
+<pre>
+  replace_start &lt;
+  replace_end   &gt;</pre>
+<pre>
+  replace_tag   A       [a@]
+  replace_tag   G       [gk]
+  replace_tag   I       [il|!1y\?\xcc\xcd\xce\xcf\xec\xed\xee\xef]
+  replace_tag   R       [r3]
+  replace_tag   V       (?:[vu]|\\\/)
+  replace_tag   SP      [\s~_-]</pre>
+<pre>
+  body          VIAGRA_OBFU     /(?!viagra)&lt;V&gt;+&lt;SP&gt;*&lt;I&gt;+&lt;SP&gt;*&lt;A&gt;+&lt;SP&gt;*&lt;G&gt;+&lt;SP&gt;*&lt;R&gt;+&lt;SP&gt;*&lt;A&gt;+/i
+  describe      VIAGRA_OBFU     Attempt to obfuscate &quot;viagra&quot;</pre>
+<pre>
+  replace_rules VIAGRA_OBFU</pre>
+<p>
+</p>
+<hr />
+<h1><a name="rule_definitions_and_privileged_settings">RULE DEFINITIONS AND PRIVILEGED SETTINGS</a></h1>
+<dl>
+<dt><strong><a name="item_replace_tag_tagname_expression">replace_tag tagname expression</a></strong><br />
+</dt>
+<dd>
+Assign a valid regular expression to tagname.
+</dd>
+<dd>
+<p>Note: It is not recommended to put quantifiers inside the tag, it's better to
+put them inside the rule itself for greater flexibility.</p>
+</dd>
+<p></p>
+<dt><strong><a name="item_replace_pre_tagname_expression">replace_pre tagname expression</a></strong><br />
+</dt>
+<dd>
+Assign a valid regular expression to tagname.  The expression will be
+placed before each tag that is replaced.
+</dd>
+<p></p>
+<dt><strong><a name="item_replace_inter_tagname_expression">replace_inter tagname expression</a></strong><br />
+</dt>
+<dd>
+Assign a valid regular expression to tagname.  The expression will be
+placed between each two immediately adjacent tags that are replaced.
+</dd>
+<p></p>
+<dt><strong><a name="item_replace_post_tagname_expression">replace_post tagname expression</a></strong><br />
+</dt>
+<dd>
+Assign a valid regular expression to tagname.  The expression will be
+placed after each tag that is replaced.
+</dd>
+<p></p>
+<dt><strong><a name="item_replace_rules_list_of_tests">replace_rules list_of_tests</a></strong><br />
+</dt>
+<dd>
+Specify a list of symbolic test names (separated by whitespace) of tests which
+should be modified using replacement tags.  Only simple regular expression
+body, header, uri, full, rawbody tests are supported.
+</dd>
+<p></p>
+<dt><strong><a name="item_replace_start_string">replace_start string</a></strong><br />
+</dt>
+<dt><strong><a name="item_replace_end_string">replace_end string</a></strong><br />
+</dt>
+<dd>
+<code>String(s)</code> which indicate the start and end of a tag inside a rule.  Only tags
+enclosed by the start and end strings are found and replaced.
+</dd>
+<p></p></dl>
+
+</body>
+
+</html>

Added: spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_ReplaceTags.txt
URL: http://svn.apache.org/viewvc/spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_ReplaceTags.txt?rev=1567225&view=auto
==============================================================================
--- spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_ReplaceTags.txt (added)
+++ spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_ReplaceTags.txt Tue Feb 11 17:26:49 2014
@@ -0,0 +1,60 @@
+NAME
+    Mail::SpamAssassin::Plugin::ReplaceTags - tags for SpamAssassin rules
+
+    The plugin allows rules to contain regular expression tags to be used in
+    regular expression rules. The tags make it much easier to maintain
+    complicated rules.
+
+    Warning: This plugin relies on data structures specific to this version
+    of SpamAssasin; it is not guaranteed to work with other versions of
+    SpamAssassin.
+
+SYNOPSIS
+      loadplugin    Mail::SpamAssassin::Plugin::ReplaceTags
+
+      replace_start <
+      replace_end   >
+
+      replace_tag   A       [a@]
+      replace_tag   G       [gk]
+      replace_tag   I       [il|!1y\?\xcc\xcd\xce\xcf\xec\xed\xee\xef]
+      replace_tag   R       [r3]
+      replace_tag   V       (?:[vu]|\\\/)
+      replace_tag   SP      [\s~_-]
+
+      body          VIAGRA_OBFU     /(?!viagra)<V>+<SP>*<I>+<SP>*<A>+<SP>*<G>+<SP>*<R>+<SP>*<A>+/i
+      describe      VIAGRA_OBFU     Attempt to obfuscate "viagra"
+
+      replace_rules VIAGRA_OBFU
+
+RULE DEFINITIONS AND PRIVILEGED SETTINGS
+    replace_tag tagname expression
+        Assign a valid regular expression to tagname.
+
+        Note: It is not recommended to put quantifiers inside the tag, it's
+        better to put them inside the rule itself for greater flexibility.
+
+    replace_pre tagname expression
+        Assign a valid regular expression to tagname. The expression will be
+        placed before each tag that is replaced.
+
+    replace_inter tagname expression
+        Assign a valid regular expression to tagname. The expression will be
+        placed between each two immediately adjacent tags that are replaced.
+
+    replace_post tagname expression
+        Assign a valid regular expression to tagname. The expression will be
+        placed after each tag that is replaced.
+
+    replace_rules list_of_tests
+        Specify a list of symbolic test names (separated by whitespace) of
+        tests which should be modified using replacement tags. Only simple
+        regular expression body, header, uri, full, rawbody tests are
+        supported.
+
+    replace_start string
+    replace_end string
+        String(s) which indicate the start and end of a tag inside a rule.
+        Only tags enclosed by the start and end strings are found and
+        replaced.
+

Added: spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_Reuse.html
URL: http://svn.apache.org/viewvc/spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_Reuse.html?rev=1567225&view=auto
==============================================================================
--- spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_Reuse.html (added)
+++ spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_Reuse.html Tue Feb 11 17:26:49 2014
@@ -0,0 +1,48 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<title>Mail::SpamAssassin::Plugin::Reuse - For reusing old rule hits during a mass-check</title>
+<link rev="made" href="mailto:root@twm2005-dev.thoughtworthy.com" />
+</head>
+
+<body style="background-color: white">
+
+<p><a name="__index__"></a></p>
+<!-- INDEX BEGIN -->
+
+<ul>
+
+	<li><a href="#name">NAME</a></li>
+	<li><a href="#synopsis">SYNOPSIS</a></li>
+	<li><a href="#description">DESCRIPTION</a></li>
+</ul>
+<!-- INDEX END -->
+
+<hr />
+<p>
+</p>
+<h1><a name="name">NAME</a></h1>
+<p>Mail::SpamAssassin::Plugin::Reuse - For reusing old rule hits during a mass-check</p>
+<p>
+</p>
+<hr />
+<h1><a name="synopsis">SYNOPSIS</a></h1>
+<pre>
+  loadplugin    Mail::SpamAssassin::Plugin::Reuse</pre>
+<pre>
+  ifplugin      Mail::SpamAssassin::Plugin::Reuse</pre>
+<pre>
+  reuse NETWORK_RULE [ NETWORK_RULE_OLD_NAME ]</pre>
+<pre>
+  endif</pre>
+<p>
+</p>
+<hr />
+<h1><a name="description">DESCRIPTION</a></h1>
+<p>The purpose of this plugin is to work in conjunction with <strong>mass-check
+--reuse</strong> to map rules hit in input messages to rule hits in the
+mass-check output.</p>
+
+</body>
+
+</html>

Added: spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_Reuse.txt
URL: http://svn.apache.org/viewvc/spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_Reuse.txt?rev=1567225&view=auto
==============================================================================
--- spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_Reuse.txt (added)
+++ spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_Reuse.txt Tue Feb 11 17:26:49 2014
@@ -0,0 +1,18 @@
+NAME
+    Mail::SpamAssassin::Plugin::Reuse - For reusing old rule hits during a
+    mass-check
+
+SYNOPSIS
+      loadplugin    Mail::SpamAssassin::Plugin::Reuse
+
+      ifplugin      Mail::SpamAssassin::Plugin::Reuse
+
+      reuse NETWORK_RULE [ NETWORK_RULE_OLD_NAME ]
+
+      endif
+
+DESCRIPTION
+    The purpose of this plugin is to work in conjunction with mass-check
+    --reuse to map rules hit in input messages to rule hits in the
+    mass-check output.
+

Added: spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_Rule2XSBody.html
URL: http://svn.apache.org/viewvc/spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_Rule2XSBody.html?rev=1567225&view=auto
==============================================================================
--- spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_Rule2XSBody.html (added)
+++ spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_Rule2XSBody.html Tue Feb 11 17:26:49 2014
@@ -0,0 +1,44 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<title>Mail::SpamAssassin::Plugin::Rule2XSBody - speed up SpamAssassin by compiling regexps</title>
+<link rev="made" href="mailto:root@twm2005-dev.thoughtworthy.com" />
+</head>
+
+<body style="background-color: white">
+
+<p><a name="__index__"></a></p>
+<!-- INDEX BEGIN -->
+
+<ul>
+
+	<li><a href="#name">NAME</a></li>
+	<li><a href="#synopsis">SYNOPSIS</a></li>
+	<li><a href="#description">DESCRIPTION</a></li>
+</ul>
+<!-- INDEX END -->
+
+<hr />
+<p>
+</p>
+<h1><a name="name">NAME</a></h1>
+<p>Mail::SpamAssassin::Plugin::Rule2XSBody - speed up SpamAssassin by compiling regexps</p>
+<p>
+</p>
+<hr />
+<h1><a name="synopsis">SYNOPSIS</a></h1>
+<pre>
+  loadplugin     Mail::SpamAssassin::Plugin::Rule2XSBody</pre>
+<p>
+</p>
+<hr />
+<h1><a name="description">DESCRIPTION</a></h1>
+<p>This plugin will use native-code object files representing the ruleset,
+in order to provide significant speedups in rule evaluation.</p>
+<p>Note that <code>sa-compile</code> must be run in advance, in order to compile the
+ruleset using <code>re2c</code> and the C compiler.  See the <code>sa-compile</code>
+documentation for more details.</p>
+
+</body>
+
+</html>

Added: spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_Rule2XSBody.txt
URL: http://svn.apache.org/viewvc/spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_Rule2XSBody.txt?rev=1567225&view=auto
==============================================================================
--- spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_Rule2XSBody.txt (added)
+++ spamassassin/site/full/3.4.x/doc/Mail_SpamAssassin_Plugin_Rule2XSBody.txt Tue Feb 11 17:26:49 2014
@@ -0,0 +1,15 @@
+NAME
+    Mail::SpamAssassin::Plugin::Rule2XSBody - speed up SpamAssassin by
+    compiling regexps
+
+SYNOPSIS
+      loadplugin     Mail::SpamAssassin::Plugin::Rule2XSBody
+
+DESCRIPTION
+    This plugin will use native-code object files representing the ruleset,
+    in order to provide significant speedups in rule evaluation.
+
+    Note that "sa-compile" must be run in advance, in order to compile the
+    ruleset using "re2c" and the C compiler. See the "sa-compile"
+    documentation for more details.
+