Skip to content

Commit e1bd144

Browse files
authored
Merge pull request #431 from httpwg/mnot-22
Talk about client half-close
2 parents e7d5c5e + a922c81 commit e1bd144

1 file changed

Lines changed: 15 additions & 1 deletion

File tree

draft-ietf-httpbis-messaging-latest.xml

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1194,11 +1194,18 @@ https://www.example.org
11941194
</ol>
11951195
<t>
11961196
Since there is no way to distinguish a successfully completed,
1197-
close-delimited message from a partially received message interrupted
1197+
close-delimited response message from a partially received message interrupted
11981198
by network failure, a server &SHOULD; generate encoding or
11991199
length-delimited messages whenever possible. The close-delimiting
12001200
feature exists primarily for backwards compatibility with HTTP/1.0.
12011201
</t>
1202+
<aside>
1203+
<t>
1204+
&Note; Request messages are never close-delimited because they are always
1205+
explicitly framed by length or transfer coding, with the absence of both implying
1206+
the request ends immediately after the header section.
1207+
</t>
1208+
</aside>
12021209
<t>
12031210
A server &MAY; reject a request that contains a message body but
12041211
not a <x:ref>Content-Length</x:ref> by responding with
@@ -1903,6 +1910,12 @@ https://www.example.org
19031910
It is unknown whether the reset problem is exclusive to TCP or might also
19041911
be found in other transport connection protocols.
19051912
</t>
1913+
<t>
1914+
Note that a TCP connection that is half-closed by the client does not
1915+
delimit a request message, nor does it imply that the client is no longer
1916+
interested in a response. In general, transport signals cannot be relied
1917+
upon to signal edge cases, since HTTP/1.1 is independent of transport.
1918+
</t>
19061919
</section>
19071920

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

32363249
<section title="Since draft-ietf-httpbis-messaging-10" anchor="changes.since.10">
32373250
<ul x:when-empty="None yet.">
3251+
<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>
32383252
<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>
32393253
<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>
32403254
<li>Moved definitions of "TE" and "Upgrade" into <xref target="Semantics"/> (<eref target="https://github.com/httpwg/http-core/issues/392"/>)</li>

0 commit comments

Comments
 (0)