Subject: RE: [Fwd: Apologies for multiple messages (Please Help!)]
From: "Dave Korn" <[email-masked]>
To: "'Herb Maeder'" <[email-masked]>, <[email-masked]>
Cc: <[email-masked]>
Date: Fri, 24 Oct 2008 18:28:24 +0100
List-Id: <cygwin.cygwin.com>

Herb Maeder wrote on 24 October 2008 18:05:

> I have a theory as to what's going on...
> 
> I believe that adding the Message-ID field is the responsibility of the
> MUA.  

  Yep.

> But some mail servers add a Message-ID if it is missing.

  Yep.  In my case, it gets added at my local server when I receive the post
from sourceware.org.

> I don't think that the missing Message-ID is the root cause of the mail
> duplication problem.  But I do believe that the missing Message-ID causes
> the workaround to the problem to fail.

  Yep and yep.

>  I'm guessing that the
> sourceware.org server may detect and prevent duplicated messages based on
> the Message-ID field.

  Yep, this is a standard dup-filtering strategy for MTAs.

>  But since there wasn't one in my message, that
> mechanism did not work.

  Indeed it could not.

> (I've got a hunch that the root cause may be some miscommunication between
> the servers due to timeouts or something, but I have no way to verify
> that).

  You don't have access to the maeder.org server?

> In any case, if my guess about the misssing Message-ID is correct, then
> I believe that a few of things should be done:
> 
>   1) I should make sure that my MUA generates the Message-ID field on
>      outgoing messages.  I believe that I have fixed this now (and this
>      message should have a "@maeder.org" Message-ID).

  Confirmed.

>   2) If the cygwin mail server is truly depending on Message-ID to stop
>      this message duplication, it should somehow ensure that it is always
>      there.  One option would be to prevent posts to the list that are
>      missing the Message-ID field (with some reasonable return error
>      message to the sender).  NOTE: I'm not sure if generating a
>      Message-ID field on the cygwin mail server would work (that might
>      just add a unique Message-ID on each duplicated message, I'm not
> sure). 

  Well, it might be possible to make a msgid based on a hash of the body of
the email.  But that would have the consequence of making it easier to impose
a computational-load DoS on the machine by sending it lots of spam with no
msgid headers.  Probably an outright rejection would be best.

>   3) Determine and fix the root of the duplication problem (though I'm not
>      sure how feasible this would really be).

> How to stop the still repeating evil message?  I still haven't a clue...

  Those headers you showed us are completely conclusive:

> >From message 1:
>   Received: from maeder.org (HELO maeder.org) (192.220.73.146)     by
sourceware.org (qpsmtpd/0.31) with ESMTP; Thu, 23 Oct 2008 20:43:33 +0000
>   Received: (qmail 86029 invoked by uid 18834); 23 Oct 2008 20:43:31 -0000
> 
> >From message 2:
>   Received: from maeder.org (HELO maeder.org) (192.220.73.146)     by
sourceware.org (qpsmtpd/0.31) with ESMTP; Thu, 23 Oct 2008 20:50:13 +0000
>   Received: (qmail 86029 invoked by uid 18834); 23 Oct 2008 20:43:31 -0000
> 
> >From message 3:
>   Received: from maeder.org (HELO maeder.org) (192.220.73.146)     by
sourceware.org (qpsmtpd/0.31) with ESMTP; Thu, 23 Oct 2008 21:10:13 +0000
>   Received: (qmail 86029 invoked by uid 18834); 23 Oct 2008 20:43:31 -0000

  What this shows is that maeder.org (192.220.73.146) is repeatedly contacting
sourceware.org to deliver the mail.  You sent the mail once only - the
repeated (qmail invoked by uid) lines all have the same stamp; your local MTA
accepted and spooled it, and is trying to send it to sourceware.org.  Because
it has no msgid, sourceware.org thinks it's a new message every time.  The
problem is caused by the fact that sourceware.org accepts the post, but
maeder.org thinks it hasn't, and retries a while later (looks like a slowly
increasing backoff is involved).

  You need to look at the mail logs on maeder.org and see what it thinks has
happened during the conversation at sourceware.org.  It may be that
sourceware.org is bogusly both accepting the mail and yet indicating an error
code to maeder.org, or it may be that maeder.org is misinterpreting the status
code from sourceware.org and only thinking it means "not accepted" when it in
fact means something like "accepted with warnings".

  I don't have access to the sourceware logs, but you may be able to read
/var/log/maillog on maeder.org even if you only have standard user-level
access, it's quite common not to need root access just to read the logs.

    cheers,
      DaveK
-- 
Can't think of a witty .sigline today....

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/