NAME
Mail::SpamAssassin::Plugin::DMARC - check DMARC policy
SYNOPSIS
loadplugin Mail::SpamAssassin::Plugin::DMARC
ifplugin Mail::SpamAssassin::Plugin::DMARC
header DMARC_PASS eval:check_dmarc_pass()
describe DMARC_PASS DMARC pass policy
tflags DMARC_PASS net nice
score DMARC_PASS -0.001
header DMARC_REJECT eval:check_dmarc_reject()
describe DMARC_REJECT DMARC reject policy
tflags DMARC_REJECT net
score DMARC_REJECT 0.001
header DMARC_QUAR eval:check_dmarc_quarantine()
describe DMARC_QUAR DMARC quarantine policy
tflags DMARC_QUAR net
score DMARC_QUAR 0.001
header DMARC_NONE eval:check_dmarc_none()
describe DMARC_NONE DMARC none policy
tflags DMARC_NONE net
score DMARC_NONE 0.001
header DMARC_MISSING eval:check_dmarc_missing()
describe DMARC_MISSING Missing DMARC policy
tflags DMARC_MISSING net
score DMARC_MISSING 0.001
header DMARC_PERMERROR eval:check_dmarc_permerror()
describe DMARC_PERMERROR DMARC permanent error
tflags DMARC_PERMERROR net
score DMARC_PERMERROR 0.001
header DMARC_TEMPERROR eval:check_dmarc_temperror()
describe DMARC_TEMPERROR DMARC temporary error
tflags DMARC_TEMPERROR net
score DMARC_TEMPERROR 0.001
endif
DESCRIPTION
This plugin checks if emails match DMARC policy, the plugin needs both DKIM and SPF plugins enabled.
If the AuthRes plugin is loaded and has parsed a DMARC result from an Authentication-Results header, that result will be used instead of performing a local DMARC check with Mail::DMARC::PurePerl. Both the result and the published domain policy must be present in the Authentication-Results header (via the policy.published-domain-policy property). If either is missing, the plugin falls back to its own Mail::DMARC::PurePerl-based validation.