[Mailman-Users] "Prevent" Reply-all

Mark Sapiro mark at msapiro.net
Tue Oct 25 18:42:45 EDT 2016

On 10/25/2016 02:46 PM, Ryan C Stasel wrote:
> What I want is really what rpschwar wanted back then. 
> User A send message to list. List members get the mail, but it “appears” to be from User A and not from the list. So a Reply and Reply-all both do the same thing. To really reply-all, users would have to physically type in the mail list address into their To or CC fields. 
> Is this possible (short of re-educating our users about how “reply-all” really isn’t appropriate in most cases)?

There's not much you can do with list configuration.

Mailman ensures the list posting address is always in To: or Cc:, so you
have to modify code (Mailman/Handlers/CookHeaders.py) to keep it out.
You also may need to set the list's Non-digest options -> personalize to
Full Personalization so the list address is not in To:.

Perhaps a better way to do all of this is to set the list's Non-digest
options -> personalize to Full Personalization and create a custom
handler (see <https://wiki.list.org/x/4030615>) to go in the pipeline
after CookHeaders and to just remove any Cc: from the message. Then the
From: will be the poster, To: will be the individual recipient and there
will be no Cc:.

However, with any method like this, you will run afoul of DMARC if the
domain of From: publishes a DMARC p=reject or p=quarantine policy. You
really can't avoid DMARC issues without changing the From: domain.
Standard DMARC mitigations will probably work by putting the original
From: in Reply-To:, but then you have the issue of the munged From:
containing the list address and you'd need to change that, but to what
could you change it that isn't the original From:, isn't the list
address, won't bounce and won't inundate someone with unwanted mail,
Maybe the list-owner address?

Another way to do something, but not exactly what you ask is to set
Privacy options... -> Recipient filters -> max_num_recipients to 2 and
require_explicit_destination to Yes.

This will ensure that any post which addresses more than just the list,
which all reply-alls will, will be held for moderation.

For more control, you can use header_filter_rules to hold or reject
posts with more that one address in To: (a regexp like '^To:.*?@.*?@.*$'
might do although it will falsely catch a display name with an @), or
any Cc:

Mark Sapiro <mark at msapiro.net>        The highway is for gamblers,
San Francisco Bay Area, California    better use your sense - B. Dylan

More information about the Mailman-Users mailing list