On Fri, 23 Mar 2001, Darren Mackay - Lists wrote:
> So are you are saying that upgrading to exim v3.22 will actually bounce the
> messages rther than attempting delivery on an alternate smarthost?
I am.
> If this
> is the case this would in fact create quite a problem with users compalining
> mail is bouncing just because the ISP uses an MTA that does not fully
> conform to the RFCs (it is also very unlikely that the ISP will change their
> MTA either - they are using a custom version of sendmail I believe).
I'm sorry, but if an MTA doesn't conform to the RFCs in too gross a way,
what can I do? Exim was changed from its previous incorrect behaviour
because people pointed out that it was buggy, and that it should bounce
messages when it received an initial response such as "554 No SMTP
service here".
If you look at RFC 821, which has been around for nearly 20 years, you
find this:
COMMAND-REPLY SEQUENCES
Each command is listed with its possible replies. The prefixes
used before the possible replies are "P" for preliminary (not
used in SMTP), "I" for intermediate, "S" for success, "F" for
failure, and "E" for error. The 421 reply (service not
available, closing transmission channel) may be given to any
command if the SMTP-receiver knows it must shut down. This
listing forms the basis for the State Diagrams in Section 4.4.
CONNECTION ESTABLISHMENT
S: 220
F: 421
HELO
...
Notice in particular that it explicitly mentions "421 (service not
available)". I don't think you can get clearer than that.
There is a replacement for RFC 821 that is almost an RFC. In addition to
421, which can be given to any command, it lists 554 as a possible
initial value:
554 Transaction failed (Or, in the case of a connection-opening
response, "No SMTP service here")
Clearly, "no SMTP service here" is a case where you want to bounce the
message.
Exim is an "unsophisticated MTA" in that it only ever looks at the first
digit of the response code, so it will treat all 5xx errors in the same
way. (Incidentally, 500 has always been "syntax error".)
--
Philip Hazel University of Cambridge Computing Service,
ph10@??? Cambridge, England. Phone: +44 1223 334714.