Re: RST_STREAM(OK) after an HTTP response

On 14 Oct 2014, at 4:10 am, Matthew Cox <macox@microsoft.com> wrote:

>> The proposal isn't for a new kind of RST_STREAM; it only illustrates how the frame interacts with HTTP semantics in a particular situation.
> 
> This is a new kind of RST_STREAM.  Previously all implementations could put their streams in an aborted state when receiving RST_STREAM and fail all I/O.

I see. This text:

"""
A server MAY request that the client abort transmission of a request without error by sending a RST_STREAM with an error code of NO_ERROR. Clients MUST NOT discard responses as a result of receiving RST_STREAM in the corresponding "half-closed (remote)" state.
"""

can be read to say that RST_STREAM causes a state transition from "open" to "half-closed (remote)", when such a state transition isn't documented; up until now, RST_STREAM has only allowed various states to transition to "closed".

I think this could be fixed by changing the text above to:

"""
When this is true, a server MAY request that the client abort transmission of a request without error by sending a RST_STREAM with an error code of NO_ERROR after sending a complete response (i.e., a frame with the END_STREAM flag). Clients MUST NOT discard responses as a result of receiving such a RST_STREAM.
"""

Does that help?


--
Mark Nottingham   https://www.mnot.net/

Received on Tuesday, 14 October 2014 00:00:54 UTC