NAME

Mail::Decency::Policy::SPF

DESCRIPTION

A SPF implementation (http://www.openspf.org/) for decency based on Mail::SPF

Weight's incoming mail based on the sender policy framework.

The SPF suggests that your (sender) domain has an additional TXT record providing a list/range of server ip's which are allowed to send mails.

For an explanation of the spf result codes have a look here: http://www.openspf.org/SPF_Received_Header

CONFIG

---
versions: [ 1, 2 ]

# the sender ip is allowed to send from this ip
weight_pass: 20

# no spf support from sender domain
weight_none: 0

# it is a fail, but sender domain admin has not the balls to use hard restrictions
#   neutral is a bit more wishy-washy then softail is, but essentially both
#   are saying: the particular sender is not really permitted, but it won't deny it
#   the ..by_default neutral status i don't get..
weight_neutral: -10
weight_neutral_by_default: -10
weight_softfail: -10

# this admin has the bals. the sender ip is not permitted for this domain
weight_fail: -50

# some temporary dns problem. should not be weighted negativly, cause this
#   could happen to any of us
weight_temperror: 0

# the permanent error says: we received something, but dont know what.
weight_permerror: -10

# this seems to catch error's which could not be further determined..
weight_error: 0

CRITICS

Critics say the SPF could break existing structures, eg you cannot send mails from gmx.com via your company's mails server. Advocates reply: that's the idea and it is good.

CLASS ATTRIBUTES

versions : ArrayRef[Int]

What SPF Versions to use (actually there is no SPF version2, read http://www.openspf.org/SPF_vs_Sender_ID)

weight_pass : Int

Weighting for passed (allowed) mails

weight_pass : Int

Weighting for passed (allowed) mails

weight_neutral : Int

Weighting for neutral (probably not allowed, but not rejected)

weight_neutral_by_default : Int

Kind of the same as neutral

weight_softfail : Int

Soft fail.. kind of same as neutral

weight_fail : Int

Really failed. SPF records says: not allowed.

weight_temperror : Int

Tempororay error.. maybe on your side ?

weight_permerror : Int

Permanent error.. should never happen. Something is really weird.

weight_error : Int

Some error.

spf_server : Mail::SPF::Server

METHODS

init

handle

check_spf

Peforms the check for either helo or mfrom scope

AUTHOR

Ulrich Kautz <uk@fortrabbit.de>

COPYRIGHT

Copyright (c) 2010 the "AUTHOR" as listed above

LICENCSE

This library is free software and may be distributed under the same terms as perl itself.