At 8:09 pm -0500 29/11/2007, Hector Santos wrote:
Glenn Anderson wrote:
At 6:12 pm -0500 29/11/2007, Hector Santos wrote:
So 421 is implied for real server critical shut down reasons in
2821 compliant servers across the board.
However shutting down because it doesn't like a parameter on a NOOP
command is to me a very clear violation of section 3.9 of RFC 2821
(section 3.8 in 2821bis):
In particular, a server that closes connections in response to
commands that are not understood is in violation of this
+1, I agree.
The question is, why did it happen? was the specs ambiguous?
I don't believe RFC 2821[bis] to be ambiguous on this matter.
Was it a legacy 821 system which does not have an string for NOOP
who had to decide between 500 and 421, both wrong, but nonetheless
used in a major vendor product line, and possibly others? Was it a
proxy and this major vendor had nothing to do with it?
I have definitely encountered what appeared to be a proxy that
returned 421 and closed the connection when it encountered things it
didn't like. If I recall correctly, the proxy in question was
returning 421 in response to a MAIL FROM command with an address that
didn't pass some sort of validation it was doing, so this problem
isn't limited to NOOP commands.
Whatever the reason, maybe 2821bis can help minimize NOOP issues in
future SMTP servers and also help legacy developers or proxy writers
fine tune their own products.
I think the culprit in this case either hadn't read section 3.9 of
RFC 2821, or deliberately chose to ignore it, so rewording it
wouldn't achieve anything.