Skip to content

Commit

Permalink
Merge pull request #431 from httpwg/mnot-22
Browse files Browse the repository at this point in the history
Talk about client half-close
  • Loading branch information
royfielding committed Aug 14, 2020
2 parents e7d5c5e + a922c81 commit e1bd144
Showing 1 changed file with 15 additions and 1 deletion.
16 changes: 15 additions & 1 deletion draft-ietf-httpbis-messaging-latest.xml
Expand Up @@ -1194,11 +1194,18 @@ https://www.example.org
</ol>
<t>
Since there is no way to distinguish a successfully completed,
close-delimited message from a partially received message interrupted
close-delimited response message from a partially received message interrupted
by network failure, a server &SHOULD; generate encoding or
length-delimited messages whenever possible. The close-delimiting
feature exists primarily for backwards compatibility with HTTP/1.0.
</t>
<aside>
<t>
&Note; Request messages are never close-delimited because they are always
explicitly framed by length or transfer coding, with the absence of both implying
the request ends immediately after the header section.
</t>
</aside>
<t>
A server &MAY; reject a request that contains a message body but
not a <x:ref>Content-Length</x:ref> by responding with
Expand Down Expand Up @@ -1903,6 +1910,12 @@ https://www.example.org
It is unknown whether the reset problem is exclusive to TCP or might also
be found in other transport connection protocols.
</t>
<t>
Note that a TCP connection that is half-closed by the client does not
delimit a request message, nor does it imply that the client is no longer
interested in a response. In general, transport signals cannot be relied
upon to signal edge cases, since HTTP/1.1 is independent of transport.
</t>
</section>

<section title="TLS Connection Closure" anchor="tls.connection.closure">
Expand Down Expand Up @@ -3235,6 +3248,7 @@ https://www.example.org

<section title="Since draft-ietf-httpbis-messaging-10" anchor="changes.since.10">
<ul x:when-empty="None yet.">
<li>In <xref target="message.body.length"/>, note that TCP half-close does not delimit a request; talk about corresponding server-side behaviour in <xref target="persistent.tear-down"/> (<eref target="https://github.com/httpwg/http-core/issues/22"/>)</li>
<li>Moved requirements specific to HTTP/1.1 from <xref target="Semantics"/> into <xref target="request.target"/> (<eref target="https://github.com/httpwg/http-core/issues/182"/>)</li>
<li>In <xref target="field.transfer-encoding"/> (<x:ref>Transfer-Encoding</x:ref>), adjust ABNF to allow empty lists (<eref target="https://github.com/httpwg/http-core/issues/210"/>)</li>
<li>Moved definitions of "TE" and "Upgrade" into <xref target="Semantics"/> (<eref target="https://github.com/httpwg/http-core/issues/392"/>)</li>
Expand Down

0 comments on commit e1bd144

Please sign in to comment.