[Mailman-Developers] Many more bounces lately

Dan Mick Dan Mick <Dan.Mick@west.sun.com>
Fri, 28 Jul 2000 21:47:27 -0700 (PDT)


(yes, I'm chatting with myself again)

Here's a patch that catches things of this form.  If anyone has
any comments, I'd be thrilled to hear them.

*** Netscape.py.orig    Fri Jul 28 21:23:23 2000
--- Netscape.py Fri Jul 28 21:46:45 2000
***************
*** 40,46 ****
--- 40,53 ----
      r'(?P<reply>please reply to)?.*<(?P<addr>[^>]*)>',
      re.IGNORECASE)
  
+ fatalre = re.compile(
+     r'The following addresses had permanent fatal errors',
+     re.IGNORECASE)
  
+ addrre = re.compile(
+     r'(?P<addr>.*@.*)',
+     re.IGNORECASE)
+ 
  

  def process(msg):
      # Sigh.  Some show NMS 3.6's show
***************
*** 79,85 ****
              return None
          plainmsg = msg
      # Did we find a text/plain part?
!     if not plainmsg:
          return None
      # Total guesswork, based on captured examples...
      addrs = []
--- 86,92 ----
              return None
          plainmsg = msg
      # Did we find a text/plain part?
!     if plainmsg == None:
          return None
      # Total guesswork, based on captured examples...
      addrs = []
***************
*** 99,102 ****
--- 106,118 ----
                  mo = acre.search(line)
                  if mo and not mo.group('reply'):
                      addrs.append(mo.group('addr'))
+         mo = fatalre.search(line)
+         if mo:
+             while 1:
+                 line = plainmsg.fp.readline()
+                 if not line:
+                     break
+                 mo = addrre.search(line)
+                 if mo:
+                     addrs.append(mo.group('addr'))
      return addrs or None

> > For a while there, I had several weeks of "no unhandled bounces".  Now I'm
> > getting a lot that aren't being caught, and I'm going to go start diagnosing
> > them.
> > 
> > Barry, or anyone, do you have anything other than the code itself to help
> > understand the various sorts of bounces that are caught by the various
> > Bouncer modules?  (i.e. samples or other explanatory docs?)
> > I expect the answer to be "no", but it doesn't hurt to ask.
> 
> So now I know something about running pdb, and I've identified some
> things about one of the messages that bounces:
> 
> It looks like DSN should be catching it, but it has no '*recipient'
> headers in its message/delivery-status section; the only mention
> of the bouncing address occurs in the text/plain section above it.
> It's from mx6.boston.juno.com, and I can't find anything about it
> that gives a clue as to what MTA might be generating it.
> 
> It also looks vaguely like Netscape.py might be a better one to hack,
> since it embodies the "no recipient" part.  I'll be trying to do that.
> 
> 
> here's a sample excerpt:
> 
> This is a MIME-encapsulated message
> 
> --AAA6Z5S39A5QX2T2/mx6.boston.juno.com
> 						<<< first part: text/plain
> The original message was received at Tue, 25 Jul 2000 12:41:35 -0400 (EST)
> from scr-admin@socal-raves.org
> 
>    ----- The following addresses had permanent fatal errors -----
> god_is_luv@juno.com				<<< only address
> 
>    ----- Transcript of session follows -----
> 550 Service unavailable
> 
> --AAA6Z5S39A5QX2T2/mx6.boston.juno.com
> Content-Type: message/delivery-status		<<< no recipient here
> 
> Reporting-MTA: mx6.boston.juno.com
> Arrival-Date: Tue, 25 Jul 2000 12:41:35 -0400 (EST)
> 
> Action: failed
> last-Attempt-Date: Tue, 25 Jul 2000 12:41:35 -0400 (EST)
> 
> --AAA6Z5S39A5QX2T2/mx6.boston.juno.com
> Content-Type: message/rfc822			<<< bounced msg here
> 
> Received: from we-24-30-117-227.we.mediaone.net 
(we-24-30-117-227.we.mediaone.ne
> t [24.30.117.227])
> 
> 
> 
> _______________________________________________
> Mailman-Developers mailing list
> Mailman-Developers@python.org
> http://www.python.org/mailman/listinfo/mailman-developers