Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 81104 Details for
Bug 124624
Patch for mailman-2.1.7 which fixes several issues as Mark Sapiro says
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
The patch Mark Sapiro suggests and which is included in the new ebuild
mailman-2.1.7-patch-20060114.txt (text/plain), 7.97 KB, created by
Jan Kohnert
on 2006-03-02 05:33:10 UTC
(
hide
)
Description:
The patch Mark Sapiro suggests and which is included in the new ebuild
Filename:
MIME Type:
Creator:
Jan Kohnert
Created:
2006-03-02 05:33:10 UTC
Size:
7.97 KB
patch
obsolete
>Index: Mailman/Archiver/HyperArch.py >=================================================================== >RCS file: /cvsroot/mailman/mailman/Mailman/Archiver/HyperArch.py,v >retrieving revision 2.37.2.19 >retrieving revision 2.37.2.20 >diff -u -r2.37.2.19 -r2.37.2.20 >--- Mailman/Archiver/HyperArch.py 30 Dec 2005 18:50:07 -0000 2.37.2.19 >+++ Mailman/Archiver/HyperArch.py 9 Jan 2006 07:33:36 -0000 2.37.2.20 >@@ -569,16 +569,21 @@ > if d['_message_id']: > headers.append('Message-ID: %(_message_id)s') > body = EMPTYSTRING.join(self.body) >- if isinstance(body, types.UnicodeType): >- body = body.encode(Utils.GetCharSet(self._lang), 'replace') >+ cset = Utils.GetCharSet(self._lang) >+ # Coerce the body to Unicode and replace any invalid characters. >+ if not isinstance(body, types.UnicodeType): >+ body = unicode(body, cset, 'replace') > if mm_cfg.ARCHIVER_OBSCURES_EMAILADDRS: > otrans = i18n.get_translation() > try: >+ atmark = unicode(_(' at '), cset) > i18n.set_language(self._lang) > body = re.sub(r'([-+,.\w]+)@([-+.\w]+)', >- '\g<1>' + _(' at ') + '\g<2>', body) >+ '\g<1>' + atmark + '\g<2>', body) > finally: > i18n.set_translation(otrans) >+ # Return body to character set of article. >+ body = body.encode(cset, 'replace') > return NL.join(headers) % d + '\n\n' + body + '\n' > > def _set_date(self, message): >Index: Mailman/Bouncers/SimpleMatch.py >=================================================================== >RCS file: /cvsroot/mailman/mailman/Mailman/Bouncers/SimpleMatch.py,v >retrieving revision 2.10.2.2 >retrieving revision 2.10.2.3 >diff -u -r2.10.2.2 -r2.10.2.3 >--- Mailman/Bouncers/SimpleMatch.py 27 Aug 2005 01:40:15 -0000 2.10.2.2 >+++ Mailman/Bouncers/SimpleMatch.py 9 Jan 2006 17:53:56 -0000 2.10.2.3 >@@ -1,4 +1,4 @@ >-# Copyright (C) 1998-2003 by the Free Software Foundation, Inc. >+# Copyright (C) 1998-2006 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 >@@ -12,7 +12,8 @@ > # > # You should have received a copy of the GNU General Public License > # along with this program; if not, write to the Free Software >-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. >+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, >+# USA. > > """Recognizes simple heuristically delimited bounces.""" > >@@ -74,6 +75,10 @@ > (_c('This message was created automatically by mail delivery'), > _c('^---- START OF RETURNED MESSAGE ----'), > _c("addressed to '(?P<addr>[^']*)'")), >+ # Prodigy.net full mailbox >+ (_c("User's mailbox is full:"), >+ _c('Unable to deliver mail.'), >+ _c("User's mailbox is full:\s*<(?P<addr>.*)>.*$")), > # Next one goes here... > ] > >Index: Mailman/Cgi/edithtml.py >=================================================================== >RCS file: /cvsroot/mailman/mailman/Mailman/Cgi/edithtml.py,v >retrieving revision 2.16.2.6 >retrieving revision 2.16.2.7 >diff -u -r2.16.2.6 -r2.16.2.7 >--- Mailman/Cgi/edithtml.py 30 Dec 2005 18:50:07 -0000 2.16.2.6 >+++ Mailman/Cgi/edithtml.py 9 Jan 2006 07:06:52 -0000 2.16.2.7 >@@ -1,4 +1,4 @@ >-# Copyright (C) 1998-2005 by the Free Software Foundation, Inc. >+# Copyright (C) 1998-2006 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 >@@ -20,6 +20,7 @@ > import os > import cgi > import errno >+import re > > from Mailman import Utils > from Mailman import MailList >Index: Mailman/Gui/Topics.py >=================================================================== >RCS file: /cvsroot/mailman/mailman/Mailman/Gui/Topics.py,v >retrieving revision 2.6.2.3 >retrieving revision 2.6.2.4 >diff -u -r2.6.2.3 -r2.6.2.4 >--- Mailman/Gui/Topics.py 27 Aug 2005 01:40:15 -0000 2.6.2.3 >+++ Mailman/Gui/Topics.py 14 Jan 2006 10:21:49 -0000 2.6.2.4 >@@ -91,6 +91,9 @@ > ] > > def handleForm(self, mlist, category, subcat, cgidata, doc): >+ # MAS: Did we come from the authentication page? >+ if not cgidata.has_key('topic_box_01'): >+ return > topics = [] > # We start i at 1 and keep going until we no longer find items keyed > # with the marked tags. >Index: Mailman/Handlers/CookHeaders.py >=================================================================== >RCS file: /cvsroot/mailman/mailman/Mailman/Handlers/CookHeaders.py,v >retrieving revision 2.33.2.18 >retrieving revision 2.33.2.19 >diff -u -r2.33.2.18 -r2.33.2.19 >--- Mailman/Handlers/CookHeaders.py 30 Dec 2005 18:50:08 -0000 2.33.2.18 >+++ Mailman/Handlers/CookHeaders.py 1 Jan 2006 20:43:23 -0000 2.33.2.19 >@@ -193,10 +193,9 @@ > # We always add a List-ID: header. > del msg['list-id'] > msg['List-Id'] = listid_h >- # For internally crafted messages, we >- # also add a (nonstandard), "X-List-Administrivia: yes" header. For all >- # others (i.e. those coming from list posts), we adda a bunch of other RFC >- # 2369 headers. >+ # For internally crafted messages, we also add a (nonstandard), >+ # "X-List-Administrivia: yes" header. For all others (i.e. those coming >+ # from list posts), we add a bunch of other RFC 2369 headers. > requestaddr = mlist.GetRequestEmail() > subfieldfmt = '<%s>, <mailto:%s?subject=%ssubscribe>' > listinfo = mlist.GetScriptURL('listinfo', absolute=1) >Index: Mailman/Handlers/SpamDetect.py >=================================================================== >RCS file: /cvsroot/mailman/mailman/Mailman/Handlers/SpamDetect.py,v >retrieving revision 2.3.2.10 >retrieving revision 2.3.2.11 >diff -u -r2.3.2.10 -r2.3.2.11 >--- Mailman/Handlers/SpamDetect.py 31 Dec 2005 06:15:33 -0000 2.3.2.10 >+++ Mailman/Handlers/SpamDetect.py 14 Jan 2006 10:11:19 -0000 2.3.2.11 >@@ -1,4 +1,4 @@ >-# Copyright (C) 1998-2005 by the Free Software Foundation, Inc. >+# Copyright (C) 1998-2006 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 >@@ -92,8 +92,7 @@ > > > def process(mlist, msg, msgdata): >- if msgdata.get('approved') or msgdata.get('reduced_list_headers'): >- # TK: 'reduced_list_headers' is intenally crafted message (virgin). >+ if msgdata.get('approved'): > return > # First do site hard coded header spam checks > for header, regex in mm_cfg.KNOWN_SPAMMERS: >@@ -103,20 +102,23 @@ > if mo: > # we've detected spam, so throw the message away > raise SpamDetected >+ # Before we go to header_filter_rules, we exclude internally generated >+ # owner notification from checking, because 1) we collect headers from >+ # all the attachments but this will cause matching the filter rule again, >+ # and 2) list owners may want to check header name / value pair like >+ # 'Precedence: bulk' which is also generated by mailman. Both will >+ # cause loop of holding owner notification messages if the action is >+ # set to 'hold'. >+ if msgdata.get('toowner') and msg.get('x-list-administrivia') == 'yes': >+ return > # 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(): >- headers = '' >- for p in msg.walk(): >- g = HeaderGenerator(StringIO()) >- g.flatten(p) >- headers += g.header_text() >- else: >- # Only the top level header should be checked. >+ headers = '' >+ for p in msg.walk(): > g = HeaderGenerator(StringIO()) >- g.flatten(msg) >- headers = g.header_text() >+ g.flatten(p) >+ headers += g.header_text() > # Now reshape headers (remove extra CR and connect multiline). > headers = re.sub('\n+', '\n', headers) > headers = re.sub('\n\s', ' ', headers)
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 124624
:
81102
| 81104