Hector Santos wrote:
... The client drives the server. Not
the other way around.
Yes, I agree. I have not suggested that the whole SMTP be changed
from synchronous to asynchronous. I ask only if the SMTP server
should send a message with a particular error code in the circumstance
where a server decides to terminate a connection because of inactivity.
Now I agree that it is asynchronous if the server sends a timeout
error message without waiting to send it in response to a client
command. But it is also asynchronous to do what you Hector suggested
earlier in the thread, to "Simply log the timeout and drop the
connection" without waiting for a QUIT from the client, and it is also
asynchronous to do what the RFC says about sending 421 when server
shutdown is forced for some reason. So asynchronous shutdown actions
are already practiced as you suggest, and already specified in the RFC.
RFC 2821 Section 4.5.3.2 allows for asynchronous SMTP server timeout.
But unless I am mistaken the RFC does not tell whether a server,
when exercising this option, should send an error code message or drop
the connection silently. This is what I ask.
Since the RFC provides for 421 on one kind of asynchronous shutdown,
it would seem consistent (and polite and professional and all that) to
send some error code in event of this other kind of asynchronous
shutdown. There might be good arguments against sending such a
message, but I do not believe I have heard such arguments yet.
Thank you,
Rich