diff options
author | Yasuhito FUTATSUKI at POEM <futatuki@poem.co.jp> | 2018-01-12 21:44:15 +0900 |
---|---|---|
committer | Yasuhito FUTATSUKI at POEM <futatuki@poem.co.jp> | 2018-01-12 21:44:15 +0900 |
commit | 16572087609fc9c9b9f55c26c9c55985fbcad804 (patch) | |
tree | d0af2f969c000db00909f66f9501634c43c8df26 /Mailman | |
parent | adb3d9035314760b62d92bda4a41991b7420360f (diff) | |
parent | c4a7c961798353841a75c862a6fe9e22529db45d (diff) | |
download | mailman2-16572087609fc9c9b9f55c26c9c55985fbcad804.tar.gz mailman2-16572087609fc9c9b9f55c26c9c55985fbcad804.tar.xz mailman2-16572087609fc9c9b9f55c26c9c55985fbcad804.zip |
sync with lp:mailman/2.1 Rev 1734
Diffstat (limited to 'Mailman')
-rw-r--r-- | Mailman/Archiver/pipermail.py | 4 | ||||
-rw-r--r-- | Mailman/Handlers/SpamDetect.py | 10 | ||||
-rw-r--r-- | Mailman/MTA/Postfix.py | 7 |
3 files changed, 16 insertions, 5 deletions
diff --git a/Mailman/Archiver/pipermail.py b/Mailman/Archiver/pipermail.py index c03d43b3..9b0813b0 100644 --- a/Mailman/Archiver/pipermail.py +++ b/Mailman/Archiver/pipermail.py @@ -249,8 +249,8 @@ class Article: if date is None: date = floatdate(message.get('x-list-received-date')) if date is None: - date = floatdate(re.sub(r'^.*;\s*', '', - message.get('received', ''), flags=re.S)) + rec_re = re.compile(r'^.*;\s*', re.DOTALL) + date = floatdate(rec_re.sub('', message.get('received', ''))) if date is None: date = floatdate(re.sub(r'From \s*\S+\s+', '', message.get_unixfrom() or '' )) diff --git a/Mailman/Handlers/SpamDetect.py b/Mailman/Handlers/SpamDetect.py index 257cdb24..4e554d70 100644 --- a/Mailman/Handlers/SpamDetect.py +++ b/Mailman/Handlers/SpamDetect.py @@ -56,7 +56,12 @@ class SpamDetected(Errors.DiscardMessage): """The message contains known spam""" class HeaderMatchHold(Errors.HoldMessage): - reason = _('The message headers matched a filter rule') + def __init__(self, pattern): + self.__pattern = pattern + + def reason_notice(self): + pattern = self.__pattern + return _('Header matched regexp: %(pattern)s') # And reset the translator @@ -195,6 +200,7 @@ error, contact the mailing list owner at %(listowner)s.""")) # pass it here but list-owner can set this to be # discarded on the GUI if he wants. return - hold_for_approval(mlist, msg, msgdata, HeaderMatchHold) + hold_for_approval( + mlist, msg, msgdata, HeaderMatchHold(pattern)) if action == mm_cfg.ACCEPT: return diff --git a/Mailman/MTA/Postfix.py b/Mailman/MTA/Postfix.py index b829ad6e..6fa3f14a 100644 --- a/Mailman/MTA/Postfix.py +++ b/Mailman/MTA/Postfix.py @@ -56,7 +56,12 @@ def _update_maps(): if (stat[ST_MODE] & targetmode) <> targetmode: os.chmod(file, stat[ST_MODE] | targetmode) dbfile = file + '.db' - stat = os.stat(dbfile) + try: + stat = os.stat(dbfile) + except OSError, e: + if e.errno <> errno.ENOENT: + raise + return if (stat[ST_MODE] & targetmode) <> targetmode: os.chmod(dbfile, stat[ST_MODE] | targetmode) user = mm_cfg.MAILMAN_USER |