- From: RFC Errata System <rfc-editor@rfc-editor.org>
- Date: Tue, 29 Mar 2016 07:25:27 -0700 (PDT)
- To: jingzl@microsoft.com, mike@belshe.com, fenix@google.com, martin.thomson@gmail.com
- Cc: barryleiba@computer.org, iesg@ietf.org, ietf-http-wg@w3.org, rfc-editor@rfc-editor.org
The following errata report has been rejected for RFC7540,
"Hypertext Transfer Protocol Version 2 (HTTP/2)".
--------------------------------------
You may review the report below and at:
http://www.rfc-editor.org/errata_search.php?rfc=7540&eid=4645
--------------------------------------
Status: Rejected
Type: Technical
Reported by: Jessie Liu <jingzl@microsoft.com>
Date Reported: 2016-03-29
Rejected by: Barry Leiba (IESG)
Section: 5.1
Original Text
-------------
idle:
All streams start in the "idle" state.
The following transitions are valid from this state:
* Sending or receiving a HEADERS frame causes the stream to
become "open". The stream identifier is selected as described
in Section 5.1.1. The same HEADERS frame can also cause a
stream to immediately become "half-closed".
* Sending a PUSH_PROMISE frame on another stream reserves the
idle stream that is identified for later use. The stream state
for the reserved stream transitions to "reserved (local)".
* Receiving a PUSH_PROMISE frame on another stream reserves an
idle stream that is identified for later use. The stream state
for the reserved stream transitions to "reserved (remote)".
* Note that the PUSH_PROMISE frame is not sent on the idle stream
but references the newly reserved stream in the Promised Stream
ID field.
Receiving any frame other than HEADERS or PRIORITY on a stream in
this state MUST be treated as a connection error (Section 5.4.1)
of type PROTOCOL_ERROR.
Corrected Text
--------------
idle:
All streams start in the "idle" state.
The following transitions are valid from this state:
* Sending or receiving a HEADERS frame causes the stream to
become "open". The stream identifier is selected as described
in Section 5.1.1. The same HEADERS frame can also cause a
stream to immediately become "half-closed".
* Sending a PUSH_PROMISE frame on another stream reserves the
idle stream that is identified for later use. The stream state
for the reserved stream transitions to "reserved (local)".
* Receiving a PUSH_PROMISE frame on another stream reserves an
idle stream that is identified for later use. The stream state
for the reserved stream transitions to "reserved (remote)".
* Note that the PUSH_PROMISE frame is not sent on the idle stream
but references the newly reserved stream in the Promised Stream
ID field.
Receiving any frame other than HEADERS, PUSH_PROMISE or
PRIORITY on a stream in this state MUST be treated as a
connection error (Section 5.4.1) of type PROTOCOL_ERROR.
Notes
-----
According to the description above and the state transformation in Figure 2, a stream in the 'idle' state could receive a PUSH_PROMISE frame.
While in the last statement of Original Text, receiving a PUSH_PROMISE on a stream in 'idle' state is a connection error.
Please fix this inconsistency problem.
--VERIFIER NOTES--
This is a duplicate of errata report #4535.
The report is incorrect: the text says "another stream" and has a note that explains this. The confusion that obviously exists should be considered in a future revision of the document.
--------------------------------------
RFC7540 (draft-ietf-httpbis-http2-17)
--------------------------------------
Title : Hypertext Transfer Protocol Version 2 (HTTP/2)
Publication Date : May 2015
Author(s) : M. Belshe, R. Peon, M. Thomson, Ed.
Category : PROPOSED STANDARD
Source : Hypertext Transfer Protocol Bis APP
Area : Applications
Stream : IETF
Verifying Party : IESG
Received on Tuesday, 29 March 2016 14:26:26 UTC