Uploaded image for project: 'HttpComponents HttpCore'
  1. HttpComponents HttpCore
  2. HTTPCORE-660

RuntimeException: HostnameVerifier, socket reset for TTL - Not Handled by SSIOSession

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Resolved
    • Minor
    • Resolution: Fixed
    • 4.4.13
    • 4.4.15
    • HttpCore NIO
    • None
    • CXF version 3.4.1
      httpcore-nio version 4.4.13
      httpasyncclient version 4.1.4

    Description

      The below exception should be handled by httpcore to keep the i/o reactor going. This issue is partly solved in HTTPCORE-268, but unfortunately the call in line 371 in SSIOSession is not wrapped causing a RuntimeException (thrown by CXF) to reach the IOReactor. The issue occurs if a request is made towards a server having a certificate with non-matching host (for instance https://wrong.host.badssl.com).

      org.apache.http.nio.reactor.IOReactorException: I/O dispatch worker terminated abnormally
      at org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor.execute(AbstractMultiworkerIOReactor.java:359) ~[httpcore-nio-4.4.13.jar:4.4.13]
      at org.apache.http.impl.nio.conn.PoolingNHttpClientConnectionManager.execute(PoolingNHttpClientConnectionManager.java:221) ~[httpasyncclient-4.1.4.jar:4.1.4]
      at org.apache.http.impl.nio.client.CloseableHttpAsyncClientBase$1.run(CloseableHttpAsyncClientBase.java:64) [httpasyncclient-4.1.4.jar:4.1.4]
      at java.lang.Thread.run(Thread.java:834) [?:?]
      Caused by: java.lang.RuntimeException: HostnameVerifier, socket reset for TTL
      at org.apache.cxf.transport.https.httpclient.DefaultHostnameVerifier.verify(DefaultHostnameVerifier.java:98) ~[cxf-rt-transports-http-3.4.1.jar:3.4.1]
      at org.apache.cxf.transport.http.asyncclient.AsyncHTTPConduit$AsyncWrappedOutputStream$5.verifySession(AsyncHTTPConduit.java:557) ~[cxf-rt-transports-http-hc-3.4.1.jar:3.4.1]
      at org.apache.http.nio.conn.ssl.SSLIOSessionStrategy$1.verify(SSLIOSessionStrategy.java:188) ~[httpasyncclient-4.1.4.jar:4.1.4]
      at org.apache.http.nio.reactor.ssl.SSLIOSession.doHandshake(SSLIOSession.java:371) ~[httpcore-nio-4.4.13.jar:4.4.13]
      at org.apache.http.nio.reactor.ssl.SSLIOSession.isAppInputReady(SSLIOSession.java:537) ~[httpcore-nio-4.4.13.jar:4.4.13]
      at org.apache.http.impl.nio.reactor.AbstractIODispatch.inputReady(AbstractIODispatch.java:120) ~[httpcore-nio-4.4.13.jar:4.4.13]

      Attachments

        Activity

          People

            Unassigned Unassigned
            pibakke Per-Ivar Bakke
            Votes:
            5 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: