Subject: [Fwd: RFC 4340 errata]

From: Eddie Kohler <[email-masked]>
Date: Sun, 17 Dec 2006 14:46:45 -0800

Dearest RFC Editor,

We sent in the attached message containing RFC 4340 errata in July, and 
as of today, I cannot find the errata on your errata page.  Just 
checking to see that it didn't disappear into the void.

Thanks,
Eddie

Subject: RFC 4340 errata
From: Eddie Kohler <[email-masked]>
To: [email-masked]
Cc: Gorry Fairhurst <[email-masked]>
Date: Tue, 11 Jul 2006 14:54:39 -0700

Hello RFC Editor!

I have some errata for RFC 4340 to report.  See the attached.

Thanks very much for your work!
Eddie Kohler

Thanks to Alfred Hoenes for reporting several errors in RFC4340.

One technical omission has been found concerning the FGSR and FGSS
variables used to detect reordering of feature negotiation options.  We
suggest adding the following paragraph to the end of Section 6.6.4, on Page
42.

   FGSR and FGSS values always satisfy FGSR <= GSR and FGSS <= GSS,
   where GSR and GSS are the Greatest Sequence Numbers Received by and
   Sent from this endpoint.  These constraints MUST be enforced even
   when GSR and GSS wrap, as they might in a long connection.
   Implementations SHOULD thus check FGSR and FGSS after every packet
   received or sent, as follows.  (Wmax is the maximum allowed value for
   the Sequence Window feature; see Section 7.5.2.)

         If FGSR > GSR, then FGSR := GSR - Wmax.
         If FGSS > GSS, then FGSS := GSS - Wmax.

   Alternate implementations that correctly handle sequence number
   wrapping are also acceptable.

Typos and editorial clarifications include:

In Section 6.6.4, Page 41, it says:

              (Change and/or Confirm).  This value is initialized to
              ISR - 1.

It should say:

              (Change and/or Confirm).  This value is initialized to
              ISR - 1, where ISR is the Initial Sequence Number Received
              from the other endpoint.  (ISR and other sequence number
              variables are defined in Section 7.1.)

In Section 6.6.4, Page 41, it says:

              reordering.  FGSS is initialized to ISS.

It should say:

              reordering.  FGSS is initialized to ISS, the Initial
              Sequence Number Sent by this endpoint.

In Section 7.5.2, Page 49, it says:

    getting out sync after bursts of loss,

It should say:

    getting out of sync after bursts of loss,

In Section 8.1.2, Page 60, it says:

            intepreting the four-character result as a 32-bit big-endian

It should say:

            interpreting the four-character result as a 32-bit big-endian

In Appendix A, Page 116, it says:

    right to left.  The implementation maintains five variables, aside

It should say:

    right to left.  The implementation maintains four variables, aside

And it says:

       acknowledged in the buffer.  This corresponds to the "head"

It should say:

       acknowledged in the buffer.  This corresponds to the "buf_head"

On Page 117, it says:

    Ack Vector, it remembers four variables:

It should say:

    Ack Vector, it remembers five variables:

In Section A.3, Page 121, it says:

    HC-Sender packet 3, so the HC-Sender has now received HC-Receiver's

It should say:

    HC-Sender packet 3, so the HC-Sender has now received the HC-Receiver's

In Section A.4, Page 122, it says:

    a single acknowledgement number tells HC-Receiver how much ack

It should say:

    a single acknowledgement number tells the HC-Receiver how much ack