diff options
| author | klm | 1998-04-27 20:13:19 +0000 |
|---|---|---|
| committer | klm | 1998-04-27 20:13:19 +0000 |
| commit | 555cccfd12d61fc97218f603b2048844b08d15e9 (patch) | |
| tree | 417b3a2469fd00b99239045a0c3e4f552929c7de | |
| parent | 37231473adb84cd2832abd91adabe8c890169231 (diff) | |
| download | mailman-555cccfd12d61fc97218f603b2048844b08d15e9.tar.gz mailman-555cccfd12d61fc97218f603b2048844b08d15e9.tar.zst mailman-555cccfd12d61fc97218f603b2048844b08d15e9.zip | |
| -rw-r--r-- | Mailman/MailList.py | 8 | ||||
| -rw-r--r-- | modules/maillist.py | 8 |
2 files changed, 14 insertions, 2 deletions
diff --git a/Mailman/MailList.py b/Mailman/MailList.py index fef4af3ca..a59c435ef 100644 --- a/Mailman/MailList.py +++ b/Mailman/MailList.py @@ -1,6 +1,6 @@ "The class representing a mailman maillist. Mixes in many feature classes." -__version__ = "$Revision: 465 $" +__version__ = "$Revision: 476 $" try: import mm_cfg @@ -682,6 +682,7 @@ class MailList(MailCommandHandler, HTMLFormatter, Deliverer, ListAdmin, #msg should be an IncomingMessage object. def Post(self, msg, approved=0): self.IsListInitialized() + # Be sure to ExtractApproval, whether or not flag is already set! msgapproved = self.ExtractApproval(msg) if not approved: approved = msgapproved @@ -689,6 +690,11 @@ class MailList(MailCommandHandler, HTMLFormatter, Deliverer, ListAdmin, # If it's the admin, which we know by the approved variable, # we can skip a large number of checks. if not approved: + from_lists = msg.getallmatchingheaders('x-beenthere') + if self.GetListEmail() in from_lists: + self.AddRequest('post', mm_utils.SnarfMessage(msg), + mm_err.LOOPING_POST, + msg.getheader('subject')) if len(self.forbidden_posters): addrs = mm_utils.FindMatchingAddresses(sender, self.forbidden_posters) diff --git a/modules/maillist.py b/modules/maillist.py index fef4af3ca..a59c435ef 100644 --- a/modules/maillist.py +++ b/modules/maillist.py @@ -1,6 +1,6 @@ "The class representing a mailman maillist. Mixes in many feature classes." -__version__ = "$Revision: 465 $" +__version__ = "$Revision: 476 $" try: import mm_cfg @@ -682,6 +682,7 @@ class MailList(MailCommandHandler, HTMLFormatter, Deliverer, ListAdmin, #msg should be an IncomingMessage object. def Post(self, msg, approved=0): self.IsListInitialized() + # Be sure to ExtractApproval, whether or not flag is already set! msgapproved = self.ExtractApproval(msg) if not approved: approved = msgapproved @@ -689,6 +690,11 @@ class MailList(MailCommandHandler, HTMLFormatter, Deliverer, ListAdmin, # If it's the admin, which we know by the approved variable, # we can skip a large number of checks. if not approved: + from_lists = msg.getallmatchingheaders('x-beenthere') + if self.GetListEmail() in from_lists: + self.AddRequest('post', mm_utils.SnarfMessage(msg), + mm_err.LOOPING_POST, + msg.getheader('subject')) if len(self.forbidden_posters): addrs = mm_utils.FindMatchingAddresses(sender, self.forbidden_posters) |
