Re: p2: Expect: 100-continue and "final" status codes

On Tue, 23 Apr 2013 12:42:02 -0500, Zhong Yu wrote:
> #Managing connection
>
> On the other hand, the spec does not address connection management
> adequately in the most important use case of the section. It currently 
> says
> (paraphrasing)
>
>     upon receiving a request that includes the 100-continue 
> expectation, if
> the origin server responds with a final status code instead of 100
> (Continue), after sending the response, it may either close the connection
> or continue to read and discard the rest of the request.
>
> I think we can give better advice than that. If a server responds with a
> final status code instead of 100 (Continue)
>
> 1. The response must be the last response on the connection. The response
> should contain "Connection: close" header. After the response is written,
> the server must initiate a lingering close of the connection (p1#6.6).
>
> 2. If the client receives a final status code instead of 100 
> (Continue), it
> should stop sending request body if it is doing so; it must close the
> connection after the response is received.

I don't understand point #2.  If the client submits a request with 
Expect:100-continue, I would assume that the client MUST NOT send any 
part of the body until it receives 100 (Continue) from the server.  If 
the server rejects the request based on the headers (with 412, 415, 417, 
etc) there should be no body data in the pipe for either the client or 
server to worry about, correct?

-- 
Kenneth Murchison
Principal Systems Software Engineer
Carnegie Mellon University

Received on Wednesday, 24 April 2013 17:01:08 UTC