NAME

Mail::SPF::Mech::Include - SPF record include mechanism class

DESCRIPTION

An object of class Mail::SPF::Mech::Include represents an SPF record mechanism of type include.

Constructors

The following constructors are provided:

new(%options): returns Mail::SPF::Mech::Include

Creates a new SPF record include mechanism object.

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

qualifier
domain_spec
See Mail::SPF::Mech/new.
new_from_string($text): returns Mail::SPF::Mech::Include; throws Mail::SPF::ENothingToParse, Mail::SPF::EInvalidMech
Creates a new SPF record include mechanism object by parsing the given string.

Class methods

The following class methods are provided:

default_qualifier
qualifier_pattern
See Mail::SPF::Mech/Class methods.
name: returns string
Returns 'include'.
name_pattern: returns Regexp
Returns a regular expression that matches a mechanism name of 'include'.

Instance methods

The following instance methods are provided:

text
qualifier
params
stringify
See Mail::SPF::Mech/Instance methods.
domain_spec: returns Mail::SPF::MacroString

Returns the domain-spec parameter of the mechanism.

match($server, $request): returns boolean

Performs a recursive SPF check using the given SPF server and request objects and substituting the mechanism's target domain name for the request's authority domain. The result of the recursive SPF check is translated as follows:

     Recursive result | Effect
    ------------------+-----------------
     pass             | return true
     fail             | return false
     softfail         | return false
     neutral          | return false
     none             | throw PermError
     permerror        | throw PermError
     temperror        | throw TempError

See RFC 4408, 5.2, for the exact algorithm used.

SEE ALSO

Mail::SPF, Mail::SPF::Record, Mail::SPF::Term, Mail::SPF::Mech

http://www.ietf.org/rfc/rfc4408.txt

For availability, support, and license information, see the README file included with Mail::SPF.

AUTHORS

Julian Mehnle <julian@mehnle.net>, Shevek <cpan@anarres.org>