Am 2020-05-27 um 10:51 schrieb Mark Thomas:
On 22/05/2020 22:59, Osipov, Michael wrote:

<snip/>

I found one issue with HttpClient and Tomcat via HTTP/1.1. I have
decrypted the TLS traffic [1]. I can see that HttpClient sends the
headers also with a 4 KiB large chunk of the ZIP file. In return a
Tomcats send the 401 response with:
Keep-Alive: timeout=300
Connection: keep-alive

The client keeps sending in 8 KiB large blocks. After 2 134 016 written
bytes there is a TLS alert: Close Notify. A few packets later: RST.

I would expect to see here: "Connection: close".

Why?

Does the client provide a content-length header and no expectation? If
so, Tomcat could determine that the maxSwallowSize is going to be
exceeded and close the connection early.

Yes, it does. CL present and not expectation. A transcript is here [1].
We have already a working patch for the early response, also Oleg is already working on the early close not happening which is a bug in HttpClient.

As for the connection header: I do not understand why you assume the header is no necessary. Your reasoning is that if the server closes the physical connection before the client has spooled the entire body and it is imperative for the client to close the connection too regard of the presense of the header?

Michael

[1] https://www.mail-archive.com/httpclient-users@hc.apache.org/msg09927.html

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
For additional commands, e-mail: users-h...@tomcat.apache.org

Reply via email to