------------------------------------------------------------
revno: 1016
committer: Mark Sapiro <[EMAIL PROTECTED]>
branch nick: 2.1
timestamp: Mon 2007-11-19 12:30:51 -0800
message:
BounceRunner.py - Fixed a mail loop if a list owner puts the list's -bounces
or -admin address in the list's owner attribute (1834569).
modified:
Mailman/Queue/BounceRunner.py
=== modified file 'Mailman/Queue/BounceRunner.py'
--- a/Mailman/Queue/BounceRunner.py 2006-03-09 22:09:34 +0000
+++ b/Mailman/Queue/BounceRunner.py 2007-11-19 20:30:51 +0000
@@ -180,11 +180,21 @@
# but a list owner address itself bounced. That's bad, and for now
# we'll simply log the problem and attempt to deliver the message to
# the site owner.
- #
+ # - the list owner could have set listname-bounces as the owner
+ # address. That's really bad as it results in a loop of ever
+ # growing unrecognized bounce messages. We detect this based on the
+ # X-BeenThere header and handle it like a list owner bounce. No
+ # real bounce will have an X-BeenThere header for the list.
+ bts = [s.strip().lower() for s in msg.get_all('x-beenthere', [])]
+ if mlist.GetListEmail().lower() in bts:
+ bt = True
+ else:
+ bt = False
# All messages to [EMAIL PROTECTED] have their envelope sender set
# to [EMAIL PROTECTED] (no virtual domain). Is this a bounce for a
- # message to a list owner, coming to the site owner?
- if msg.get('to', '') == Utils.get_site_email(extra='owner'):
+ # message to a list owner, coming to the site owner, or an owner
+ # notice sent directly to the -bounces address?
+ if msg.get('to', '') == Utils.get_site_email(extra='owner') or bt:
# Send it on to the site owners, but craft the envelope sender to
# be the -loop detection address, so if /they/ bounce, we won't
# get stuck in a bounce loop.
@@ -192,6 +202,7 @@
recips=[Utils.get_site_email()],
envsender=Utils.get_site_email(extra='loop'),
)
+ return
# List isn't doing bounce processing?
if not mlist.bounce_processing:
return
--
https://code.launchpad.net/~mailman-coders/mailman/2.1
You are receiving this branch notification because you are subscribed to it.
To unsubscribe from this branch go to
https://code.launchpad.net/~mailman-coders/mailman/2.1/+subscription/mailman-checkins.
_______________________________________________
Mailman-checkins mailing list
[email protected]
Unsubscribe:
http://mail.python.org/mailman/options/mailman-checkins/archive%40jab.org