You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hc.apache.org by "Jonah Schwartz (JIRA)" <ji...@apache.org> on 2014/03/10 03:37:42 UTC

[jira] [Created] (HTTPCLIENT-1478) https calls ignore http.socket.timeout during SSL Handshake

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: dev-unsubscribe@hc.apache.org
For additional commands, e-mail: dev-help@hc.apache.org