Update of /cvsroot/mailman/mailman/Mailman/Handlers
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv28503

Modified Files:
        SpamDetect.py 
Log Message:
Backport from 2-1_maint branch.


Index: SpamDetect.py
===================================================================
RCS file: /cvsroot/mailman/mailman/Mailman/Handlers/SpamDetect.py,v
retrieving revision 2.6
retrieving revision 2.7
diff -u -d -r2.6 -r2.7
--- SpamDetect.py       30 Dec 2005 18:56:46 -0000      2.6
+++ SpamDetect.py       31 Dec 2005 04:26:46 -0000      2.7
@@ -92,10 +92,7 @@
 
 
 def process(mlist, msg, msgdata):
-    # Don't check for spam if the message has been approved or it is generated
-    # internally for administration because holding '-owner' notification may
-    # cause infinite loop of checking. (Actually, it is stopped elsewhere.)
-    if msgdata.get('approved') or msg.get('x-list-administrivia'):
+    if msgdata.get('approved'):
         return
     # First do site hard coded header spam checks
     for header, regex in mm_cfg.KNOWN_SPAMMERS:
@@ -107,8 +104,11 @@
                 raise SpamDetected
     # Now do header_filter_rules
     # TK: Collect headers in sub-parts because attachment filename
-    #     extension may be a clue to possible virus/spam.
-    if msg.is_multipart():
+    # extension may be a clue to possible virus/spam.
+    # Check also 'X-List-Administrivia' header if the message was owner
+    # notification.  Held message may be attached and have matching header
+    # which may cause infinite loop of holding.         
+    if msg.is_multipart() and not msg.get('x-list-administrivia',''):
         headers = ''
         for p in msg.walk():
             g = HeaderGenerator(StringIO())

_______________________________________________
Mailman-checkins mailing list
[email protected]
Unsubscribe: 
http://mail.python.org/mailman/options/mailman-checkins/archive%40jab.org

Reply via email to