summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Mailman/Bouncers/Postfix.py13
1 files changed, 11 insertions, 2 deletions
diff --git a/Mailman/Bouncers/Postfix.py b/Mailman/Bouncers/Postfix.py
index 6050a4170..86fb7be91 100644
--- a/Mailman/Bouncers/Postfix.py
+++ b/Mailman/Bouncers/Postfix.py
@@ -14,7 +14,16 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-"""Parse bounce messages generated by Postfix."""
+"""Parse bounce messages generated by Postfix.
+
+This also matches something called `Keftamail' which looks just like Postfix
+bounces with the word Postfix scratched out and the word `Keftamail' written
+in in crayon.
+
+It also matches something claiming to be `The BNS Postfix program'.
+/Everybody's/ gotta be different, huh?
+
+"""
import re
@@ -33,7 +42,7 @@ def flatten(msg, leaves):
# are these heuristics correct or guaranteed?
-pcre = re.compile(r'\t\t\tthe postfix', re.IGNORECASE)
+pcre = re.compile(r'\t\t\tthe\s*(bns)?\s*(postfix|keftamail)', re.IGNORECASE)
rcre = re.compile(r'failure reason:$', re.IGNORECASE)
acre = re.compile(r'<(?P<addr>[^>]*)>:')