Jonah Schwartz created HTTPCLIENT-1478:
------------------------------------------
Summary: https calls ignore http.socket.timeout during SSL
Handshake
Key: HTTPCLIENT-1478
URL: https://issues.apache.org/jira/browse/HTTPCLIENT-1478
Project: HttpComponents HttpClient
Issue Type: Bug
Components: HttpConn
Affects Versions: 4.3.3, 4.3.2, 4.3.1, 4.3 Final
Environment: All
Reporter: Jonah Schwartz
https calls ignore http.socket.timeout during SSL Handshake. This can result in
a https call hanging forever waiting for socket read.
In both SSLSocketFactory and SSLConnectionSocketFactory,
sslsock.startHandshake(); is called before socket timeout is set on the socket.
This means timeout is not respected during the SSL handshake, and the thread
can hang with a stacktrace that looks like this:
org.apache.http.impl.client.AbstractHttpClient.doExecute
org.apache.http.impl.client.DefaultRequestDirector.execute
org.apache.http.impl.client.DefaultRequestDirector.tryConnect
org.apache.http.impl.conn.ManagedClientConnectionImpl.open
org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection
org.apache.http.conn.ssl.SSLSocketFactory.connectSocket
org.apache.http.conn.ssl.SSLSocketFactory.connectSocket
sun.security.ssl.SSLSocketImpl.startHandshake
sun.security.ssl.SSLSocketImpl.startHandshake
sun.security.ssl.SSLSocketImpl.performInitialHandshake
sun.security.ssl.SSLSocketImpl.readRecord
sun.security.ssl.InputRecord.read
sun.security.ssl.InputRecord.readV3Record
sun.security.ssl.InputRecord.readFully
java.net.SocketInputStream.read
java.net.SocketInputStream.socketRead0
--
This message was sent by Atlassian JIRA
(v6.2#6252)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]