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.

dmarc_save_reports ( 0 | 1 ) (default: 0)

Store DMARC reports using Mail::DMARC::Store, mail-dmarc.ini must be configured to save and send DMARC reports.