(Note two responses combined below) --On Saturday, September 4, 2021 14:07 -0400 Viktor Dukhovni via Exim-users <[email protected]> wrote:
>... > The status code on the last line of a multi-line response is > and will be taken as authoritative, regardless of any other > status codes on prior lines of the response. This has worked > well enough for 22+ years. Viktor, As I assume you may have guessed given that you follow EMAILCORE, my main interest in this right now is to think about what changes, if any, are needed in 5431bis. Watch for a note on that list and some changes in -04 that reflect this conversation, for which thanks to everyone. From that particular perspective and purpose, as soon as someone says "for my specific application or bright idea, it does not matter what the standard says", I sort of lose interest. However, while (apparently unlike many of the rest of you) I have not spent any significant time in more than a decade pouring over logs looking for mail transaction behavior anomalies, I don't believe "worked well enough for 22+ years" actually conveys much information. When I was last looking at those logs, the number of times I saw a server returning a multiline reply with mixed codes was zero or very close to it. If all of the codes are the same, as SMTP requires, then things will work well no matter which one is picked. Now, if you were to say "there haven't been any problems since this behavior first became common N years ago", that would be useful information. But... --and-- --On Saturday, September 4, 2021 20:00 +0100 Andrew C Aitchison via Exim-users <[email protected]> wrote: >> The greet pause test is *specifically* designed to detect >> botnet spam engines that don't wait for the complete >> multi-line response, and start talking as soon as they detect >> the first line of the response. That's why the pause is >> after, and not before, "220-". This is also why the final >> response code is unavoidably different from the initial. > > Are you saying that applies in this case ? > If so, then exim is replying during the greet pause, which is > a real bug ? Yes, if exim, or anything else, were responding before the last line of a valid multiliine response was received, that would be, as I understand the standard, a bug. However, if an SMTP client saw one or more lines of a multiline response that started with a particular code and then a line with some other code (whether it carried a continuation indicator or not), well that is outside the spec and nothing that client did, including closing the connection or sending an immediate command (especially if it were QUIT), would violate the spec clearly enough to be an unambiguous bug. john -- ## List details at https://lists.exim.org/mailman/listinfo/exim-users ## Exim details at http://www.exim.org/ ## Please use the Wiki with this list - http://wiki.exim.org/
