aboutsummaryrefslogtreecommitdiffstats
path: root/Mailman
diff options
context:
space:
mode:
authorYasuhito FUTATSUKI at POEM <futatuki@poem.co.jp>2018-01-12 21:44:15 +0900
committerYasuhito FUTATSUKI at POEM <futatuki@poem.co.jp>2018-01-12 21:44:15 +0900
commit16572087609fc9c9b9f55c26c9c55985fbcad804 (patch)
treed0af2f969c000db00909f66f9501634c43c8df26 /Mailman
parentadb3d9035314760b62d92bda4a41991b7420360f (diff)
parentc4a7c961798353841a75c862a6fe9e22529db45d (diff)
downloadmailman2-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.py4
-rw-r--r--Mailman/Handlers/SpamDetect.py10
-rw-r--r--Mailman/MTA/Postfix.py7
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