
I tried asking this on mailman-users, and got totally ignored both times I asked. Here is my problem: One of my mailing list users has an ISP that refuses email for hours at a time, and the ISP that they get their email through, panix.com, sends a warning if it's undelivered for four hours. Problem is, mailman treats that warning as an error, and if it happens for a few days in a row (even if the problem corrects itself for part of the day and delivers the mail), it bounces her off my mailing lists.
The problem is that I don't know Python. As far as I can tell, the fix to ignore these warnings should go in Mailman/Bouncers/Postfix.py, but that's all I can figure out. Can somebody help me?
Here is a sanitized version of the bounce:
----- Forwarded message from mailman@xcski.com -----
Subject: Bounce action notification From: mailman@xcski.com To: XXXXXXX-owner@xcski.com Date: Sat, 17 Apr 2004 16:36:23 -0400 X-Spam-Status: No, hits=-4.5 required=6.0 tests=AWL,BAYES_00,NO_REAL_NAME autolearn=no version=2.63
This is a Mailman mailing list bounce action notice:
List: XXXXXXX
Member: XXXXXXX@echonyc.com
Action: Subscription disabled.
Reason: Excessive or fatal bounces.
The triggering bounce notice is attached below.
Questions? Contact the Mailman site administrator at mailman@xcski.com.
Date: Sat, 17 Apr 2004 16:36:49 -0400 (EDT) From: MAILER-DAEMON@panix.com (Mail Delivery System) Subject: Delayed Mail (still being retried) To: XXXXXXX-bounces@xcski.com
Content-Description: Notification This is the Postfix program at host l2mail1.panix.com.
#################################################################### # THIS IS A WARNING ONLY. YOU DO NOT NEED TO RESEND YOUR MESSAGE. # ####################################################################
Your message could not be delivered for 4.0 hours. It will be retried until it is 5.0 days old.
For further assistance, please send mail to <postmaster>
The Postfix program
<XXXXXXX@echonyc.com>: connect to echonyc.com[198.67.15.2]: Connection refused
Content-Description: Delivery error report Reporting-MTA: dns; l2mail1.panix.com Arrival-Date: Sat, 17 Apr 2004 10:05:49 -0400 (EDT)
Final-Recipient: rfc822; XXXXXXX@echonyc.com Action: delayed Status: 4.0.0 Diagnostic-Code: X-Postfix; connect to echonyc.com[198.67.15.2]: Connection refused Will-Retry-Until: Thu, 22 Apr 2004 10:05:49 -0400 (EDT)
[snip]
Paul Tomblin <ptomblin@xcski.com> http://xcski.com/blogs/pt/ I think I'd like to see a Simpsons episode starting up with Bart Simpson writing 'I will not attempt to undermine the Usenet Cabal'. -- J. D. Falk

On Tue, 2004-05-04 at 03:13, Paul Tomblin wrote:
I tried asking this on mailman-users, and got totally ignored both times I asked. Here is my problem: One of my mailing list users has an ISP that refuses email for hours at a time, and the ISP that they get their email through, panix.com, sends a warning if it's undelivered for four hours.
They should not do this if the mail is marked as "low priority" - ie Precedence set to values like "list" or "junk". It could be worth talking to panix about this.
My approach to such a problem would be either:- * My normal bloody mindedness - ie let the user's subscription die. * Filter the delay warnings before they hit mailman by using an MTA filter of some form.
Nigel.
-- [ Nigel Metheringham Nigel.Metheringham@InTechnology.co.uk ] [ - Comments in this message are my own and not ITO opinion/policy - ]

At 10:06 AM +0100 2004/05/04, Nigel Metheringham wrote:
They should not do this if the mail is marked as "low priority" - ie Precedence set to values like "list" or "junk". It could be worth talking to panix about this.
I believe that I had seen and responded to his previous posting
on mailman-users. IIRC, Panix isn't about to change how they do anything. Nor is the recipient ISP. And the user refuses to move to a different ISP.
* Filter the delay warnings before they hit mailman by using an MTA filter of some form.
IIRC, Paul is using an ISP where he has no control over the MTA,
and he's not about to change ISPs to a place where he might have more control over this.
Having eliminated virtually every reasonable alternative, he
either has to hack the Python code to avoid treating a warning as an error, or the user drops off the mailing list. I see no other options.
I seem to recall that I have previously said more or less the
same thing to him.
-- Brad Knowles, <brad.knowles@skynet.be>
"They that can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety." -Benjamin Franklin, Historical Review of Pennsylvania.
SAGE member since 1995. See <http://www.sage.org/> for more info.

Quoting Brad Knowles (brad.knowles@skynet.be):
At 10:06 AM +0100 2004/05/04, Nigel Metheringham wrote:
They should not do this if the mail is marked as "low priority" - ie Precedence set to values like "list" or "junk". It could be worth talking to panix about this.
I believe that I had seen and responded to his previous posting on mailman-users. IIRC, Panix isn't about to change how they do
Sorry, I don't believe I saw any responses to my question on mailman-users.
* Filter the delay warnings before they hit mailman by using an MTA filter of some form.
IIRC, Paul is using an ISP where he has no control over the MTA, and he's not about to change ISPs to a place where he might have more control over this.
I do have some control over the MTA. But it does seem a little ridiculous to filter out warnings (but not errors) just because mailman insists on treating warnings as errors.
-- Paul Tomblin <ptomblin@xcski.com> http://xcski.com/blogs/pt/ I'm just waiting for the day that someone decides that "ignorant moron" is an ethnic group, and thus cannot be discriminated against. -- Christian Wagner

On Tue, 2004-05-04 at 12:03, Paul Tomblin wrote:
I do have some control over the MTA. But it does seem a little ridiculous to filter out warnings (but not errors) just because mailman insists on treating warnings as errors.
The ISP is sending bounces. The fact that the text in the message says these are warning messages rather than bounces does not change the fact that the messages are bounces.
Mailman cannot parse every form of error message - in that direction lies madness. Does it need to be polyglot as well?
BTW one of the reasons I am moving to VERP handling of mailman mail is so that I can then easily treat all these oddities that are currently missed (due to crap internal message structure so that the end point address cannot be derived) such as delay warning messages, TMDA or other challenge response messages and similar crap. They will all be treated as straight bounces - send more than a couple and you get a free invitation off the list.
Nigel.
-- [ Nigel Metheringham Nigel.Metheringham@InTechnology.co.uk ] [ - Comments in this message are my own and not ITO opinion/policy - ]

Quoting Nigel Metheringham (Nigel.Metheringham@dev.InTechnology.co.uk):
On Tue, 2004-05-04 at 12:03, Paul Tomblin wrote:
I do have some control over the MTA. But it does seem a little ridiculous to filter out warnings (but not errors) just because mailman insists on treating warnings as errors.
The ISP is sending bounces. The fact that the text in the message says these are warning messages rather than bounces does not change the fact that the messages are bounces.
No, it's sending warnings that are being incorrectly interpreted as bounces. The fact that the warning has one line that matches the niave bounce parsing, but others that don't, shows that the bounce parsing is broken.
sendmail has had that "4 hours undeliverable" warning since the days when I was delivering email via uucp over a 2400bps modem. It's not like this is something that just crept up on people.
-- Paul Tomblin <ptomblin@xcski.com> http://xcski.com/blogs/pt/ Flying is not dangerous; crashing is dangerous.

Quoting Nigel Metheringham (Nigel.Metheringham@dev.InTechnology.co.uk):
Mailman cannot parse every form of error message - in that direction lies madness. Does it need to be polyglot as well?
By the way, I notice that Mailman/Bouncers/SimpleWarning seems to be where the standard Sendmail 4 hour warning is handled, but unless I'm reading it wrong (and that's possible, since I don't know Python) it appears to handle that as a bounce, not a warning, in spite of the presence of a provision in Bounces/BouncerAPI.py to swallow warnings.
-- Paul Tomblin <ptomblin@xcski.com> http://xcski.com/blogs/pt/ I have a longstanding agreement with tequila: I won't drink it, and it won't make me sick. -- Brian Kantor

At 12:20 PM +0100 2004/05/04, Nigel Metheringham wrote:
The ISP is sending bounces. The fact that the text in the message says these are warning messages rather than bounces does not change the fact that the messages are bounces.
Technically, they are not "bounces". They are Delivery Status
Notifications.
Mailman cannot parse every form of error message - in that direction lies madness. Does it need to be polyglot as well?
No, but we could make an attempt to better handle the standard
format messages, as described by the RFCs.
-- Brad Knowles, <brad.knowles@skynet.be>
"They that can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety." -Benjamin Franklin, Historical Review of Pennsylvania.
SAGE member since 1995. See <http://www.sage.org/> for more info.

On Tue, 2004-05-04 at 11:28, Brad Knowles wrote:
Mailman cannot parse every form of error message - in that direction lies madness. Does it need to be polyglot as well?
No, but we could make an attempt to better handle the standard format messages, as described by the RFCs.
If the DSN conforms to RFC 3464, Mailman should not register a bounce for Action: delayed. If it does, then it's a bug.
See Mailman/Bouncers/DSN.py
-Barry

On Tue, 2004-05-04 at 05:06, Nigel Metheringham wrote:
They should not do this if the mail is marked as "low priority" - ie Precedence set to values like "list" or "junk"
Absolutely right. And you can hack Mailman all you like to try to recognize these warnings, but in the long run I don't think it will help those users very much. I predict that they'll get bounced from lists handled by other MLM's just as handily. Or they will piss off people who send them legit email.
You could of course turn off all bounce processing <wink> for your lists if you wanted to coddle your users.
Or you could wait for Mailman 2.1.5, which will send a probe before disabling them, once their bounce score reaches the threshold. The probe will verp in a unique token and if their mailer sends a warning back for that, well they're out of luck.
The bottom line is that MTA warnings for precedence bulk has been a well-known misconfiguration for a long time.
-Barry

On Mon, 3 May 2004, Paul Tomblin wrote:
I tried asking this on mailman-users, and got totally ignored both times I asked. Here is my problem: One of my mailing list users has an ISP that refuses email for hours at a time, and the ISP that they get their email through, panix.com, sends a warning if it's undelivered for four hours. Problem is, mailman treats that warning as an error, and if it happens for a few days in a row (even if the problem corrects itself for part of the day and delivers the mail), it bounces her off my mailing lists.
The problem is that I don't know Python. As far as I can tell, the fix to ignore these warnings should go in Mailman/Bouncers/Postfix.py, but that's all I can figure out. Can somebody help me?
While the developers are looking for the best way of handling such delivery notifications ;) you might try to fiddle around with the Bounce Processing Parameters (one of the top configuration categories). Setting bounce_score_threshold to a higher while setting bounce_info_stale_after to a really low value might ease your problems.
-- Heiko Rommel rommel@suse.de SUSE Linux AG, Maxfeldstr. 5, D-90409 Nuernberg T: +49 (0) 911 74053 0 F: +49 (0) 911 741 77 55
participants (5)
-
Barry Warsaw
-
Brad Knowles
-
Heiko Rommel
-
Nigel Metheringham
-
Paul Tomblin