You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hc.apache.org by "Per-Ivar Bakke (Jira)" <ji...@apache.org> on 2021/01/22 10:03:00 UTC

[jira] [Updated] (HTTPCORE-660) RuntimeException: HostnameVerifier, socket reset for TTL - Not Handled by SSIOSession

     [ https://issues.apache.org/jira/browse/HTTPCORE-660?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Per-Ivar Bakke updated HTTPCORE-660:
------------------------------------
    Description: 
The below exception should be handled by httpcore to keep the i/o reactor going. This issue is partly solved in https://issues.apache.org/jira/browse/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 unknown host (for instance https://wrong.host.badssl.com).

 

{{org.apache.http.nio.reactor.IOReactorException: I/O dispatch worker terminated abnormallyorg.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]}}

 

  was:
The below exception should be handled by httpcore to keep the i/o reactor going. This issue is partly solved in https://issues.apache.org/jira/browse/HTTPCORE-268, but unfortunately the call in line 371 in SSIOSession is not wrapped causing a RuntimeException to reach the IOReactor.

 

{{org.apache.http.nio.reactor.IOReactorException: I/O dispatch worker terminated abnormallyorg.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]}}

 


> RuntimeException: HostnameVerifier, socket reset for TTL - Not Handled by SSIOSession
> -------------------------------------------------------------------------------------
>
>                 Key: HTTPCORE-660
>                 URL: https://issues.apache.org/jira/browse/HTTPCORE-660
>             Project: HttpComponents HttpCore
>          Issue Type: Bug
>          Components: HttpCore NIO
>    Affects Versions: 4.4.13
>         Environment: CXF version 3.4.1
> httpcore version 4.4.13
>            Reporter: Per-Ivar Bakke
>            Priority: Major
>
> The below exception should be handled by httpcore to keep the i/o reactor going. This issue is partly solved in https://issues.apache.org/jira/browse/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 unknown host (for instance https://wrong.host.badssl.com).
>  
> {{org.apache.http.nio.reactor.IOReactorException: I/O dispatch worker terminated abnormallyorg.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]}}
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@hc.apache.org
For additional commands, e-mail: dev-help@hc.apache.org