diff options
author | Mark Sapiro <msapiro@value.net> | 2007-11-11 21:40:15 -0800 |
---|---|---|
committer | Mark Sapiro <msapiro@value.net> | 2007-11-11 21:40:15 -0800 |
commit | f383c36db54e30c67f9bf22fc1498e9fed7b65d1 (patch) | |
tree | c85b738d79c54f4660db2d90ceb4bdbc1ebfe74d /Mailman/Bouncers/SimpleMatch.py | |
parent | 70689d7eb61f8c852a6a02be1d65c86cde06bde2 (diff) | |
download | mailman2-f383c36db54e30c67f9bf22fc1498e9fed7b65d1.tar.gz mailman2-f383c36db54e30c67f9bf22fc1498e9fed7b65d1.tar.xz mailman2-f383c36db54e30c67f9bf22fc1498e9fed7b65d1.zip |
Backported Bounce recognizer changes and tests from the 3.0 branch
Diffstat (limited to '')
-rw-r--r-- | Mailman/Bouncers/SimpleMatch.py | 45 |
1 files changed, 42 insertions, 3 deletions
diff --git a/Mailman/Bouncers/SimpleMatch.py b/Mailman/Bouncers/SimpleMatch.py index 12eeffdc..2e9c23b1 100644 --- a/Mailman/Bouncers/SimpleMatch.py +++ b/Mailman/Bouncers/SimpleMatch.py @@ -1,4 +1,4 @@ -# Copyright (C) 1998-2006 by the Free Software Foundation, Inc. +# Copyright (C) 1998-2007 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 @@ -87,6 +87,10 @@ PATTERNS = [ (_c('Unable to deliver message to the following address\(es\)\.'), _c('--- Original message follows\.'), _c('<(?P<addr>[^>]*)>:')), + # googlemail.com + (_c('Delivery to the following recipient failed'), + _c('----- Original message -----'), + _c('^\s*(?P<addr>[^\s@]+@[^\s@]+)\s*$')), # kundenserver.de (_c('A message that you sent could not be delivered'), _c('^---'), @@ -97,13 +101,16 @@ PATTERNS = [ _c('^(?P<addr>[^\s@]+@[^\s@:]+):')), # thehartford.com (_c('Delivery to the following recipients failed'), - _c("Bogus - there actually isn't anything"), + # this one may or may not have the original message, but there's nothing + # unique to stop on, so stop on the first line of at least 3 characters + # that doesn't start with 'D' (to not stop immediately) and has no '@'. + _c('^[^D][^@]{2,}$'), _c('^\s*(?P<addr>[^\s@]+@[^\s@]+)\s*$')), # and another thehartfod.com/hartfordlife.com (_c('^Your message\s*$'), _c('^because:'), _c('^\s*(?P<addr>[^\s@]+@[^\s@]+)\s*$')), - # kviv.be (NTMail) + # kviv.be (InterScan NT) (_c('^Unable to deliver message to'), _c(r'\*+\s+End of message\s+\*+'), _c('<(?P<addr>[^>]*)>')), @@ -127,6 +134,38 @@ PATTERNS = [ (_c('A message that you sent could not be delivered'), _c('^---'), _c('(?P<addr>[^\s@]+@[^\s@)]+)')), + # LSMTP for Windows + (_c('^--> Error description:\s*$'), + _c('^Error-End:'), + _c('^Error-for:\s+(?P<addr>[^\s@]+@[^\s@]+)')), + # Qmail with a tri-language intro beginning in spanish + (_c('Your message could not be delivered'), + _c('^-'), + _c('<(?P<addr>[^>]*)>:')), + # socgen.com + (_c('Your message could not be delivered to'), + _c('^\s*$'), + _c('(?P<addr>[^\s@]+@[^\s@]+)')), + # dadoservice.it + (_c('Your message has encountered delivery problems'), + _c('Your message reads'), + _c('addressed to\s*(?P<addr>[^\s@]+@[^\s@)]+)')), + # gomaps.com + (_c('Did not reach the following recipient'), + _c('^\s*$'), + _c('\s(?P<addr>[^\s@]+@[^\s@]+)')), + # EYOU MTA SYSTEM + (_c('This is the deliver program at'), + _c('^-'), + _c('^(?P<addr>[^\s@]+@[^\s@<>]+)')), + # A non-standard qmail at ieo.it + (_c('this is the email server at'), + _c('^-'), + _c('\s(?P<addr>[^\s@]+@[^\s@]+)[\s,]')), + # pla.net.py (MDaemon.PRO ?) + (_c('- no such user here'), + _c('There is no user'), + _c('^(?P<addr>[^\s@]+@[^\s@]+)\s')), # Next one goes here... ] |