RFC Errata
Found 7 records.
Status: Verified (4)
RFC 9260, "Stream Control Transmission Protocol", June 2022
Source of RFC: tsvwg (wit)
Errata ID: 7148
Status: Verified
Type: Technical
Publication Format(s) : TEXT, PDF, HTML
Reported By: Michael Tüxen
Date Reported: 2022-10-06
Verifier Name: Martin Duke
Date Verified: 2022-10-06
Section 3.3.3 says:
A receiver of an INIT ACK chunk with the a_rwnd value set to a value smaller than 1500 MUST discard the packet, SHOULD send a packet in response containing an ABORT chunk and using the Initiate Tag as the Verification Tag, and MUST NOT change the state of any existing association.
It should say:
If an endpoint in the COOKIE-WAIT state receives an INIT ACK chunk with the a_rwnd value set to a value smaller than 1500, it MUST destroy the TCB and SHOULD send an ABORT chunk. If such an INIT ACK chunk is received in any state other than CLOSED or COOKIE-WAIT, it SHOULD be discarded silently (see Section 5.2.3).
Notes:
The handling of a_rwnd < 1500 should be similar to the handling of OS = 0 or MIS = 0.
Errata ID: 7387
Status: Verified
Type: Technical
Publication Format(s) : TEXT, PDF, HTML
Reported By: Michael Tüxen
Date Reported: 2023-03-16
Verifier Name: Martin Duke
Date Verified: 2023-04-27
Section 5.2.4.1 says:
Endpoint A Endpoint Z <-------------- Association is established----------------------> Tag=Tag_A Tag=Tag_Z <---------------------------------------------------------------> {A crashes and restarts} {app sets up an association with Z} (build TCB) INIT [I-Tag=Tag_A' & other info] --------\ (Start T1-init timer) \ (Enter COOKIE-WAIT state) \---> (find an existing TCB, populate TieTags if needed, compose Cookie_Z with Tie-Tags and other info) /--- INIT ACK [Veri Tag=Tag_A', / I-Tag=Tag_Z', (Cancel T1-init timer) <------/ Cookie_Z] (leave original TCB in place) COOKIE ECHO [Veri=Tag_Z', Cookie_Z]-------\ (Start T1-init timer) \ (Enter COOKIE-ECHOED state) \---> (Find existing association, Tie-Tags in Cookie_Z match Tie-Tags in TCB, Tags do not match, i.e., case X X M M above, Announce Restart to ULP and reset association). /---- COOKIE ACK (Cancel T1-init timer, <------/ Enter ESTABLISHED state) {app sends 1st user data; strm 0} DATA [TSN=Initial TSN_A Strm=0,Seq=0 & user data]--\ (Start T3-rtx timer) \ \-> /--- SACK [TSN Ack=init TSN_A,Block=0] (Cancel T3-rtx timer) <------/
It should say:
Endpoint A Endpoint Z <-------------- Association is established----------------------> Tag=Tag_A Tag=Tag_Z <---------------------------------------------------------------> {A crashes and restarts} {app sets up an association with Z} (build TCB) INIT [I-Tag=Tag_A' & other info] --------\ (Start T1-init timer) \ (Enter COOKIE-WAIT state) \---> (find an existing TCB, populate TieTags if needed, compose Cookie_Z with Tie-Tags and other info) /--- INIT ACK [Veri Tag=Tag_A', / I-Tag=Tag_Z', (Cancel T1-init timer) <------/ Cookie_Z] (leave original TCB in place) COOKIE ECHO [Veri=Tag_Z', Cookie_Z]-------\ (Start T1-cookie timer) \ (Enter COOKIE-ECHOED state) \---> (Find existing association, Tie-Tags in Cookie_Z match Tie-Tags in TCB, Tags do not match, i.e., case X X M M above, Announce Restart to ULP and reset association). /---- COOKIE ACK (Cancel T1-cookie timer, <----/ Enter ESTABLISHED state) {app sends 1st user data; strm 0} DATA [TSN=Initial TSN_A Strm=0,Seq=0 & user data]--\ (Start T3-rtx timer) \ \-> /--- SACK [TSN Ack=init TSN_A,Block=0] (Cancel T3-rtx timer) <------/
Notes:
A packet containing an COOKIE-ECHO chunk is protected against loss by the T1-cookie timer, not the T1-init timer.
Errata ID: 7147
Status: Verified
Type: Editorial
Publication Format(s) : HTML
Reported By: Michael Tüxen
Date Reported: 2022-10-06
Verifier Name: RFC Editor
Date Verified: 2022-10-10
Section 3.2 says:
+----+--------------------------------------------------+ | 00 | Stop processing this SCTP packet and discard the | | | unrecognized chunk and all further chunks. | +----+--------------------------------------------------+ | 01 | Stop processing this SCTP packet, discard the | | | unrecognized chunk and all further chunks, and | | | report the unrecognized chunk in an ERROR chunk | | | using the 'Unrecognized Chunk Type' error cause. | +----+--------------------------------------------------+ | 10 | Skip this chunk and continue processing. | +----+--------------------------------------------------+ | 11 | Skip this chunk and continue processing, but | | | report it in an ERROR chunk using the | | | 'Unrecognized Chunk Type' error cause. | +----+--------------------------------------------------+
It should say:
+----+--------------------------------------------------+ | 00 | Stop processing this SCTP packet and discard the | | | unrecognized chunk and all further chunks. | +----+--------------------------------------------------+ | 01 | Stop processing this SCTP packet, discard the | | | unrecognized chunk and all further chunks, and | | | report the unrecognized chunk in an ERROR chunk | | | using the "Unrecognized Chunk Type" error cause. | +----+--------------------------------------------------+ | 10 | Skip this chunk and continue processing. | +----+--------------------------------------------------+ | 11 | Skip this chunk and continue processing, but | | | report it in an ERROR chunk using the | | | "Unrecognized Chunk Type" error cause. | +----+--------------------------------------------------+
Notes:
In the rest of the document, error cause names are enclosed in double quotes, not in single quotes.
Errata ID: 7852
Status: Verified
Type: Editorial
Publication Format(s) : TEXT, PDF, HTML
Reported By: Michael Tüxen
Date Reported: 2024-03-15
Verifier Name: Zaheduzzaman Sarker
Date Verified: 2025-03-18
Section 8.5 says:
When receiving an SCTP packet, the endpoint MUST ensure that the value in the Verification Tag field of the received SCTP packet matches its own tag.
It should say:
When receiving an SCTP packet, the endpoint MUST first ensure that the value in the Verification Tag field of the received SCTP packet matches its own tag before processing any chunks or changing its state.
Notes:
State explicitly that the check of the verification tag needs to be done before any processing of the packet.
Thanks to Jake Ginesin, Max von Hippel, and Cristina Nita-Rotaru for reporting issue and discussing it with me.
Status: Reported (2)
RFC 9260, "Stream Control Transmission Protocol", June 2022
Source of RFC: tsvwg (wit)
Errata ID: 8387
Status: Reported
Type: Technical
Publication Format(s) : TEXT
Reported By: Iñaki Baz Castillo
Date Reported: 2025-04-20
Section 3.3.10.6 says:
Unrecognized Chunk: variable length The Unrecognized Chunk field contains the unrecognized chunk from the SCTP packet complete with Chunk Type, Chunk Flags, and Chunk Length.
It should say:
Unrecognized Chunk: variable length The Unrecognized Chunk field contains the unrecognized chunk from the SCTP packet complete with Chunk Type, Chunk Flags, Chunk Length, and Chunk Value.
Notes:
If the Unrecognized Chunk field of the Unrecognized Chunk Type (6) error cause only contained "Chunk Type, Chunk Flags, and Chunk Length" (as the RFC says) then the Cause Length would have fixed value 8. However, Unrecognized Chunk is defined as variable length, meaning that it must contain the entire unrecognized Chunk including its Chunk Value field.
Errata ID: 8402
Status: Reported
Type: Technical
Publication Format(s) : TEXT
Reported By: Iñaki Baz Castillo
Date Reported: 2025-05-02
Section 5.1.6 says:
If the T1-init timer expires at "A" after the INIT or COOKIE ECHO chunks are sent, the same INIT or COOKIE ECHO chunk with the same Initiate Tag (i.e., Tag_A) or State Cookie is retransmitted and the timer is restarted.
It should say:
If the T1-init timer expires at "A" after the INIT chunk is sent or if the T1-cookie timer expires at "A" after the the COOKIE ECHO chunk is sent, the same INIT or COOKIE ECHO chunk with the same Initiate Tag (i.e., Tag_A) or State Cookie is retransmitted and the timer is restarted.
Notes:
T1-init timer is cancelled at "A" upon receipt of INIT ACK chunk from "Z", so it's impossible that T1-init timer expires at "A" after the COOKIE ECHO chunk is sent (since COOKIE ECHO chunk is immediately sent after INIT ACK chunk is received).
Status: Rejected (1)
RFC 9260, "Stream Control Transmission Protocol", June 2022
Source of RFC: tsvwg (wit)
Errata ID: 7988
Status: Rejected
Type: Technical
Publication Format(s) : TEXT, PDF, HTML
Reported By: Milen Hristov
Date Reported: 2024-06-01
Rejected by: Zaheduzzaman Sarker
Date Rejected: 2025-03-18
Section .3.2. Initiation says:
not clearly specified sending IP Address for INIT
It should say:
INIT can be accepted from either the Primary or Secondary IP Address
Notes:
Based on the dicussion here (https://mailarchive.ietf.org/arch/msg/tsvwg/KmARqJ0C3lDnyrv9Wz_IH0Rwqyc/) this errata is rejected.
--VERIFIER NOTES--
Based on the dicussion here (https://mailarchive.ietf.org/arch/msg/tsvwg/KmARqJ0C3lDnyrv9Wz_IH0Rwqyc/) this errata is rejected.