[Top] [All Lists]

RE: BDAT, RFC 3030 protocol clarification?

2003-06-13 07:14:52

Thanks... you beat me to this observation.  After sending, a nibble of doubt 
led me to revisit RFC 2920, the standard version of pipelining.  That document 
does not require that there be a valid recipient before sending data, and 
advises the server to accept and discard the data.

Based on this, I change my position to resolve what is now clearly an internal 
contradiction in favor of the clarifying that when pipelining with BDAT, the 
server is required to accept BDAT and all associated data even if there are no 
valid recipients.

Greg V.

-----Original Message-----
From: Arnt Gulbrandsen [mailto:arnt(_at_)gulbrandsen(_dot_)priv(_dot_)no]
Sent: Friday, June 13, 2003 3:50 AM
To: Keith Moore
Cc: Vaudreuil, Greg M (Greg); Matti Aarnio; ietf-smtp(_at_)imc(_dot_)org
Subject: Re: BDAT, RFC 3030 protocol clarification?

Keith Moore writes:
my understanding was  that the client should not send BDAT commands 
unless it had received a 2xx response from MAIL and at least one of 
the RCPT commands.

Well, 1854 says sending DATA is okay, 3030 says BDAT and DATA are the 
same, and AFAIK nothing says that in this respect the two are 
different. IMO the successor to 3030 should say so.

failure to do so could cause synchronization problems if the server  
then said 5xx in response to BDAT because it wasn't going to accept 
the message anyway.

IMHO if a server is ignoring data in the TCP buffer when it claims to 
support PIPELINING, that server is broken and we shouldn't try to fix 
it in the spec. but if a server complains when a client sends BDAT 
for no valid recipients,
I don't blame the server for that.

I suggest that if a BDAT-capable server receives BDAT, it SHOULD either 
receive and discard the data, or else send its response and drop the 
connection. Shouldn't need saying, but I guess it does not hurt.