[Top] [All Lists]

Re: Mail Data termination

2011-08-16 20:08:39

Murray S. Kucherawy wrote:

That's not what QUIT means.  QUIT closes a session, not a transaction.  The end 
of DATA completes a transaction (Section of RFC5321) and resets state.

The idea of not delivering a message because the client didn't send QUIT is a singular interpretation of SMTP as far as I can tell.

Sorry. Not so Murray. There are plenty of clients that will resend simply because they are waiting to send the QUIT command as mandated by SMTP. If that was not the case, they could simple drop the connection all the time once the 250 is received. The fact is, some will drop the line and some will drop but not before pumping a QUIT, just in case, even before getting the 250 response. In all cases, it is in violation of SMTP 2821/5321.

The SMTP spec absolutely does not say in any way shape of form that one way to complete a transaction is to DROP THE LINE once a 250 is received. It clearly indicate not sending a QUIT is irregular. The client MUST NOT drop the line before sending the QUIT, and it is extremely not robust to assume a 250 means mail MUST BE delivered by simply dropping the line.

Following it will save you dupe problems with invalid RFC5322 messages such this example case.


Hector Santos

<Prev in Thread] Current Thread [Next in Thread>