Subject: [Emailcore] Ticket #13: G.7.7. Does the 'first digit only' and/or non-listed reply code text need clarification?

From: "Alexey Melnikov" <[email-masked]>
Date: Tue, 19 Jan 2021 15:23:09 +0000

Hi,
I've changed the subject to reflect the correct ticket number. Commenting on the substance below.

On Thu, Dec 17, 2020, at 1:54 PM, Alessandro Vesely wrote:
> On Thu 17/Dec/2020 05:46:29 +0100 John C Klensin wrote:
> > --On Wednesday, December 16, 2020 22:41 -0500 John Levine wrote:
> >> In article <6A1255A557C666DF96E19DB9@PSB> you write:
> >>>	"It should use information in the other digits of the
> >>>	code and any supplemental codes or information (see RFC
> >>>	3463) only if it recognizes them and to provide
> >>>	additional information as needed but should rely on that
> >>>	first digit if the additional information is not
> >>>	recognized."
> >> 
> >> That seems utterly obvious, which I suppose means we should be
> >> sure to include it.
> > 
> > The discussion did come up on the mailing list and it is
> > possible --although I admit it is a stretch-- to read "Whenever
> > possible, a sender-SMTP SHOULD test the first digit (severity
> > indication) of a reply code it receives" as meaning "sometimes
> > it should not test even that" or leaving questions about what to
> > do with the test open.
> 
> 
> Yeah, especially when comparing that SHOULD with the fact that the first digit 
> MUST be checked if the response code is not recognized.  As if it were more 
> difficult to check the first digit than the whole response code.  Perhaps, 
> reading is easier if "Whenever possible" is replaced by something like "If the 
> sender-SMTP does not know how to deal with a specific response code".
> 
> Actually, only some response codes are better understood in their entirety, 
> e.g. 421.  The rest are for logging and offline pondering.

I tend to agree. How about the following strawman proposal:

OLD:
  Whenever possible, a sender-SMTP SHOULD test the first digit (severity indication)
  of a reply code it receives.

NEW:
  Sender-SMTP tests the whole 3 digit reply code it receives and any supplemental
  codes or information (see RFC 3463 and RFC 5248) if it recognizes them.
  Sender-SMTP MUST use the first digit (severity indication) of a reply code
  it receives if the full reply code or additional information is not recognized.

?

(Can additionally change "Sender-SMTP tests" to "Sender-SMTP SHOULD test" in the first replacement sentence)

Best Regards,
Alexey

---

From: Dave Crocker <[email-masked]>
Date: Tue, 19 Jan 2021 07:31:50 -0800

On 1/19/2021 7:23 AM, Alexey Melnikov wrote:
> NEW: Sender-SMTP tests the whole 3 digit reply code it receives and 
> any supplemental codes or information (see RFC 3463 and RFC 5248) if
>  it recognizes them. Sender-SMTP MUST use the first digit (severity 
> indication) of a reply code it receives if the full reply code or 
> additional information is not recognized.

Given the normative term in the second sentence it seems odd -- and
possibly problematic -- to have no normative term in the first sentence.

I assume the intention here is:

     Sender-SMTP MUST first test the whole 3 digit reply code it
receives, as well as any accompanying supplemental codes or information
(see RFC 3463 and RFC 5248). If the full reply code or additional
information is not recognized, Sender-SMTP MUST use the first digit
(severity indication) of a reply code it receives

d/

-- 
Dave Crocker
Brandenburg InternetWorking
bbiw.net

---

From: "Alexey Melnikov" <[email-masked]>
Date: Tue, 19 Jan 2021 15:56:32 +0000

On Tue, Jan 19, 2021, at 3:31 PM, Dave Crocker wrote:
> (severity indication) of a reply code it receives.

Your proposed version is better, thank you.