summaryrefslogtreecommitdiff
path: root/src/mailman/chains
diff options
context:
space:
mode:
Diffstat (limited to 'src/mailman/chains')
-rw-r--r--src/mailman/chains/builtin.py4
-rw-r--r--src/mailman/chains/docs/moderation.rst5
2 files changed, 9 insertions, 0 deletions
diff --git a/src/mailman/chains/builtin.py b/src/mailman/chains/builtin.py
index 16de1043a..3bf0fd5b5 100644
--- a/src/mailman/chains/builtin.py
+++ b/src/mailman/chains/builtin.py
@@ -38,6 +38,10 @@ class BuiltInChain:
description = _('The built-in moderation chain.')
_link_descriptions = (
+ # First check DMARC. For a reject or discard, the rule hits and we
+ # jump to the moderation chain to do the action. Otherwise, the rule
+ # misses buts sets msgdata['dmarc'] for the handler.
+ ('dmarc-moderation', LinkAction.jump, 'moderation'),
('approved', LinkAction.jump, 'accept'),
('emergency', LinkAction.jump, 'hold'),
('loop', LinkAction.jump, 'discard'),
diff --git a/src/mailman/chains/docs/moderation.rst b/src/mailman/chains/docs/moderation.rst
index 3b40c7293..53c32bc33 100644
--- a/src/mailman/chains/docs/moderation.rst
+++ b/src/mailman/chains/docs/moderation.rst
@@ -87,6 +87,7 @@ built-in chain. No rules hit and so the message is accepted.
Subject: aardvark
Hits:
Misses:
+ dmarc-moderation
approved
emergency
loop
@@ -124,6 +125,7 @@ moderator approval.
Hits:
member-moderation
Misses:
+ dmarc-moderation
approved
emergency
loop
@@ -150,6 +152,7 @@ Anne's moderation action can also be set to `discard`...
Hits:
member-moderation
Misses:
+ dmarc-moderation
approved
emergency
loop
@@ -175,6 +178,7 @@ Anne's moderation action can also be set to `discard`...
Hits:
member-moderation
Misses:
+ dmarc-moderation
approved
emergency
loop
@@ -215,6 +219,7 @@ moderator approval.
Hits:
nonmember-moderation
Misses:
+ dmarc-moderation
approved
emergency
loop