diff options
author | Mark Sapiro <mark@msapiro.net> | 2016-02-17 10:43:31 -0800 |
---|---|---|
committer | Mark Sapiro <mark@msapiro.net> | 2016-02-17 10:43:31 -0800 |
commit | 9eecc5d5d26373741ba5dfc03872098c3a6e602c (patch) | |
tree | af7f879748b5a0978dad9359b3f8eb6af0a09151 /Mailman | |
parent | 91f070fe878cb1e3c9fc55a9373258a976d19be5 (diff) | |
download | mailman2-9eecc5d5d26373741ba5dfc03872098c3a6e602c.tar.gz mailman2-9eecc5d5d26373741ba5dfc03872098c3a6e602c.tar.xz mailman2-9eecc5d5d26373741ba5dfc03872098c3a6e602c.zip |
Acknowledge option will now be honored for posts to anonymous lists
Diffstat (limited to '')
-rw-r--r-- | Mailman/Handlers/Cleanse.py | 5 | ||||
-rwxr-xr-x | Mailman/Handlers/CookHeaders.py | 4 |
2 files changed, 7 insertions, 2 deletions
diff --git a/Mailman/Handlers/Cleanse.py b/Mailman/Handlers/Cleanse.py index c684cd19..5270bb5a 100644 --- a/Mailman/Handlers/Cleanse.py +++ b/Mailman/Handlers/Cleanse.py @@ -1,4 +1,4 @@ -# Copyright (C) 1998-2015 by the Free Software Foundation, Inc. +# Copyright (C) 1998-2016 by the Free Software Foundation, Inc. # # This program is free software; you can redistribute it and/or # modify it under the terms of the GNU General Public License @@ -60,6 +60,9 @@ def process(mlist, msg, msgdata): del msg['x-approve'] # Also remove this header since it can contain a password del msg['urgent'] + # If we're anonymizing, we need to save the sender here, and we may as + # well do it for all. + msgdata['original_sender'] = msg.get_sender() # We remove other headers from anonymous lists if mlist.anonymous_list: syslog('post', 'post to %s from %s anonymized', diff --git a/Mailman/Handlers/CookHeaders.py b/Mailman/Handlers/CookHeaders.py index 8b371b77..59eb67b7 100755 --- a/Mailman/Handlers/CookHeaders.py +++ b/Mailman/Handlers/CookHeaders.py @@ -98,7 +98,9 @@ def process(mlist, msg, msgdata): # message, we want to save some of the information in the msgdata # dictionary for later. Specifically, the sender header will get waxed, # but we need it for the Acknowledge module later. - msgdata['original_sender'] = msg.get_sender() + # We may have already saved it; if so, don't clobber it here. + if 'original_sender' not in msgdata: + msgdata['original_sender'] = msg.get_sender() # VirginRunner sets _fasttrack for internally crafted messages. fasttrack = msgdata.get('_fasttrack') if not msgdata.get('isdigest') and not fasttrack: |