Hi there,

I ran the test suite for a wide range of combinations of TC versions (7, 8.5 and 9 head), Java versions (1.7.0, 1.8.0 and 11 - where applicable) and OpenSSL (1.1.1a, 1.1.1, 1.1.0i, 1.1.0e, 1.0.2q, 1.0.2).

tc revision was 1852637, tcnative was always 1.2.21, platforms where Solaris 10 Sparc, SLES11+12, RHEL 6+7. Connectors where APR, BIO, IO, NIO2 (where aplicable), tcnative tests run with all connectors and OpenSSL based impl.

Some failures might be well known. I think first there's a need for some triage (possible false positives).

I will send the tcnative based results separately.

Non-tcnative
============

A total of 42 runs (16 TC 7, 16 TC 8.5, 10 TC 9; 8 bio, 21 nio, 13 nio2; 16 RHEL7, 16 SLES12, 10 Solaris).

For the TLS tests note that when testing non-tcnative, I do not give explicit pathes or versions for OpenSSL, so a platform OpenSSl is beng used. For the version dependent parts of the TLS tests, it makes more sense to look at the tcnative results, which are based on explicitly given OpenSSL versions.

Websocket Failures
------------------

- org.apache.catalina.websocket.TestWebSocket

Only tc7.0.x, RHEL7, SLES12, Java 11, bio+nio:

Failure detail:

Testcase: testKey took 2.006 sec
        Caused an ERROR
javax/xml/bind/DatatypeConverter
java.lang.NoClassDefFoundError: javax/xml/bind/DatatypeConverter
        at org.apache.catalina.util.Base64.encode(Base64.java:93)
at org.apache.catalina.websocket.TestWebSocket.testKey(TestWebSocket.java:261) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) Caused by: java.lang.ClassNotFoundException: javax.xml.bind.DatatypeConverter at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:583) at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
        at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)

Testcase: testBug53339 took 0.202 sec
        FAILED
null
junit.framework.AssertionFailedError
at org.apache.catalina.websocket.TestWebSocket.testBug53339(TestWebSocket.java:307) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)


- org.apache.tomcat.websocket.TestWebSocketFrameClientSSL

Failing sporadically on tc9.0.x for nio2 with Java 1.8.0, here for RHEL7 and Solaris 10 Sparc

Failure detail:

Testcase: testBug56032 took 77.859 sec
        FAILED
There are [1] connections still open
junit.framework.AssertionFailedError: There are [1] connections still open
at org.apache.tomcat.websocket.TestWebSocketFrameClientSSL.testBug56032(TestWebSocketFrameClientSSL.java:147)

Testcase: testBug56032 took 77.859 sec
        FAILED
expected:<0> but was:<1>
junit.framework.AssertionFailedError: expected:<0> but was:<1>
at org.apache.tomcat.websocket.WebSocketBaseTest.checkBackgroundProcessHasStopped(WebSocketBaseTest.java:45)


TLS
---

- org.apache.tomcat.util.net.TestSsl
Only failing for tc7.0.x, RHEL7+SLES12+Solaris 10 Sparc, Java 11+1.8.0 (not 1.7.0), bio+nio:

E bio jdk1.8.0 RHEL7
E bio jdk1.8.0 SLES12
E bio jdk1.8.0 SOLARIS
R bio jdk11 RHEL7
R bio jdk11 SLES12
R nio jdk1.8.0 RHEL7
R nio jdk1.8.0 SLES12
D nio jdk1.8.0 SOLARIS
R nio jdk11 RHEL7
R nio jdk11 SLES12

R, E and D denote different types of failures or errors, all during reneg tests:

-- R (Re-negotiation worked in testRenegotiateFail)

Testcase: testRenegotiateFail took 0.543 sec
        FAILED
Re-negotiation worked
junit.framework.AssertionFailedError: Re-negotiation worked
at org.apache.tomcat.util.net.TestSsl.testRenegotiateFail(TestSsl.java:151) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

-- E (handshake_failure in testRenegotiateWorks, testRenegotiateFail)

Testcase: testRenegotiateWorks took 0.394 sec
        Caused an ERROR
Received fatal alert: handshake_failure
javax.net.ssl.SSLHandshakeException: Received fatal alert: handshake_failure
        at sun.security.ssl.Alerts.getSSLException(Alerts.java:192)
        at sun.security.ssl.Alerts.getSSLException(Alerts.java:154)
at sun.security.ssl.SSLSocketImpl.recvAlert(SSLSocketImpl.java:2020) at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:1127) at sun.security.ssl.SSLSocketImpl.readDataRecord(SSLSocketImpl.java:933)
        at sun.security.ssl.AppInputStream.read(AppInputStream.java:105)
        at sun.nio.cs.StreamDecoder.readBytes(StreamDecoder.java:284)
        at sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:326)
        at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:178)
        at java.io.InputStreamReader.read(InputStreamReader.java:184)
        at java.io.BufferedReader.fill(BufferedReader.java:161)
        at java.io.BufferedReader.readLine(BufferedReader.java:324)
        at java.io.BufferedReader.readLine(BufferedReader.java:389)
at org.apache.tomcat.util.net.TestSsl.testRenegotiateWorks(TestSsl.java:193)

Testcase: testRenegotiateFail took 0.379 sec
        Caused an ERROR
Received fatal alert: handshake_failure
javax.net.ssl.SSLHandshakeException: Received fatal alert: handshake_failure
        at sun.security.ssl.Alerts.getSSLException(Alerts.java:192)
        at sun.security.ssl.Alerts.getSSLException(Alerts.java:154)
at sun.security.ssl.SSLSocketImpl.recvAlert(SSLSocketImpl.java:2020) at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:1127) at sun.security.ssl.SSLSocketImpl.readDataRecord(SSLSocketImpl.java:933)
        at sun.security.ssl.AppInputStream.read(AppInputStream.java:105)
        at sun.nio.cs.StreamDecoder.readBytes(StreamDecoder.java:284)
        at sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:326)
        at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:178)
        at java.io.InputStreamReader.read(InputStreamReader.java:184)
        at java.io.BufferedReader.fill(BufferedReader.java:161)
        at java.io.BufferedReader.readLine(BufferedReader.java:324)
        at java.io.BufferedReader.readLine(BufferedReader.java:389)
at org.apache.tomcat.util.net.TestSsl.testRenegotiateFail(TestSsl.java:140)


-- D (Expecting finished message, received data in testRenegotiateFail)

Testcase: testRenegotiateFail took 1.171 sec
        Caused an ERROR
Expecting finished message, received data
javax.net.ssl.SSLProtocolException: Expecting finished message, received data at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:1116) at sun.security.ssl.SSLSocketImpl.waitForClose(SSLSocketImpl.java:1761) at sun.security.ssl.HandshakeOutStream.flush(HandshakeOutStream.java:124) at sun.security.ssl.Handshaker.sendChangeCipherSpec(Handshaker.java:1152) at sun.security.ssl.ClientHandshaker.sendChangeCipherAndFinish(ClientHandshaker.java:1280) at sun.security.ssl.ClientHandshaker.serverFinished(ClientHandshaker.java:1240) at sun.security.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:376)
        at sun.security.ssl.Handshaker.processLoop(Handshaker.java:1037)
        at sun.security.ssl.Handshaker.process_record(Handshaker.java:965)
at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:1064) at sun.security.ssl.SSLSocketImpl.readDataRecord(SSLSocketImpl.java:933)
        at sun.security.ssl.AppInputStream.read(AppInputStream.java:105)
        at sun.nio.cs.StreamDecoder.readBytes(StreamDecoder.java:284)
        at sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:326)
        at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:178)
        at java.io.InputStreamReader.read(InputStreamReader.java:184)
        at java.io.BufferedReader.fill(BufferedReader.java:161)
        at java.io.BufferedReader.readLine(BufferedReader.java:324)
        at java.io.BufferedReader.readLine(BufferedReader.java:389)
at org.apache.tomcat.util.net.TestSsl.testRenegotiateFail(TestSsl.java:140)


- org.apache.tomcat.util.net.TestClientCert

Only tc7.0.x, RHEL7+SLES12+Solaris 10 Sparc, Java 11+1.8.0 (not 1.7.0),
bio (not nio):

Failure detail (here for Java 8, Java 11 similar):

Unexpected end of file from server in testClientCertGetWithPreemptive, testClientCertPostSame, testClientCertGetWithoutPreemptive, testClientCertPostSmaller.

Testcase: testClientCertGetWithPreemptive took 2.213 sec
        Caused an ERROR
Unexpected end of file from server
java.net.SocketException: Unexpected end of file from server
        at sun.net.www.http.HttpClient.parseHTTPHeader(HttpClient.java:851)
        at sun.net.www.http.HttpClient.parseHTTP(HttpClient.java:678)
        at sun.net.www.http.HttpClient.parseHTTPHeader(HttpClient.java:848)
        at sun.net.www.http.HttpClient.parseHTTP(HttpClient.java:678)
at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1587) at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1492) at java.net.HttpURLConnection.getResponseCode(HttpURLConnection.java:480) at sun.net.www.protocol.https.HttpsURLConnectionImpl.getResponseCode(HttpsURLConnectionImpl.java:347) at org.apache.catalina.startup.TomcatBaseTest.methodUrl(TomcatBaseTest.java:661) at org.apache.catalina.startup.TomcatBaseTest.methodUrl(TomcatBaseTest.java:634) at org.apache.catalina.startup.TomcatBaseTest.getUrl(TomcatBaseTest.java:628) at org.apache.catalina.startup.TomcatBaseTest.getUrl(TomcatBaseTest.java:622) at org.apache.catalina.startup.TomcatBaseTest.getUrl(TomcatBaseTest.java:607) at org.apache.catalina.startup.TomcatBaseTest.getUrl(TomcatBaseTest.java:601) at org.apache.tomcat.util.net.TestClientCert.doTestClientCertGet(TestClientCert.java:62) at org.apache.tomcat.util.net.TestClientCert.testClientCertGetWithPreemptive(TestClientCert.java:44)

Testcase: testClientCertPostSame took 0.208 sec
        Caused an ERROR
Unexpected end of file from server
java.net.SocketException: Unexpected end of file from server
        at sun.net.www.http.HttpClient.parseHTTPHeader(HttpClient.java:851)
        at sun.net.www.http.HttpClient.parseHTTP(HttpClient.java:678)
        at sun.net.www.http.HttpClient.parseHTTPHeader(HttpClient.java:848)
        at sun.net.www.http.HttpClient.parseHTTP(HttpClient.java:678)
at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1587) at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1492) at java.net.HttpURLConnection.getResponseCode(HttpURLConnection.java:480) at sun.net.www.protocol.https.HttpsURLConnectionImpl.getResponseCode(HttpsURLConnectionImpl.java:347) at org.apache.catalina.startup.TomcatBaseTest.postUrl(TomcatBaseTest.java:751) at org.apache.catalina.startup.TomcatBaseTest.postUrl(TomcatBaseTest.java:703) at org.apache.tomcat.util.net.TestClientCert.doTestClientCertPost(TestClientCert.java:113) at org.apache.tomcat.util.net.TestClientCert.testClientCertPostSame(TestClientCert.java:86)

Testcase: testClientCertGetWithoutPreemptive took 0.204 sec
        Caused an ERROR
Unexpected end of file from server
java.net.SocketException: Unexpected end of file from server
        at sun.net.www.http.HttpClient.parseHTTPHeader(HttpClient.java:851)
        at sun.net.www.http.HttpClient.parseHTTP(HttpClient.java:678)
        at sun.net.www.http.HttpClient.parseHTTPHeader(HttpClient.java:848)
        at sun.net.www.http.HttpClient.parseHTTP(HttpClient.java:678)
at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1587) at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1492) at java.net.HttpURLConnection.getResponseCode(HttpURLConnection.java:480) at sun.net.www.protocol.https.HttpsURLConnectionImpl.getResponseCode(HttpsURLConnectionImpl.java:347) at org.apache.catalina.startup.TomcatBaseTest.methodUrl(TomcatBaseTest.java:661) at org.apache.catalina.startup.TomcatBaseTest.methodUrl(TomcatBaseTest.java:634) at org.apache.catalina.startup.TomcatBaseTest.getUrl(TomcatBaseTest.java:628) at org.apache.catalina.startup.TomcatBaseTest.getUrl(TomcatBaseTest.java:622) at org.apache.catalina.startup.TomcatBaseTest.getUrl(TomcatBaseTest.java:607) at org.apache.catalina.startup.TomcatBaseTest.getUrl(TomcatBaseTest.java:601) at org.apache.tomcat.util.net.TestClientCert.doTestClientCertGet(TestClientCert.java:71) at org.apache.tomcat.util.net.TestClientCert.testClientCertGetWithoutPreemptive(TestClientCert.java:39)

Testcase: testClientCertPostSmaller took 0.167 sec
        Caused an ERROR
Unexpected end of file from server
java.net.SocketException: Unexpected end of file from server
        at sun.net.www.http.HttpClient.parseHTTPHeader(HttpClient.java:851)
        at sun.net.www.http.HttpClient.parseHTTP(HttpClient.java:678)
        at sun.net.www.http.HttpClient.parseHTTPHeader(HttpClient.java:848)
        at sun.net.www.http.HttpClient.parseHTTP(HttpClient.java:678)
at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1587) at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1492) at java.net.HttpURLConnection.getResponseCode(HttpURLConnection.java:480) at sun.net.www.protocol.https.HttpsURLConnectionImpl.getResponseCode(HttpsURLConnectionImpl.java:347) at org.apache.catalina.startup.TomcatBaseTest.postUrl(TomcatBaseTest.java:751) at org.apache.catalina.startup.TomcatBaseTest.postUrl(TomcatBaseTest.java:703) at org.apache.tomcat.util.net.TestClientCert.doTestClientCertPost(TestClientCert.java:113) at org.apache.tomcat.util.net.TestClientCert.testClientCertPostSmaller(TestClientCert.java:79)


- org.apache.tomcat.util.net.TestCustomSsl
Only tc7.0.x, RHEL7+SLES12+Solaris 10 Sparc, Java 11+1.8.0 (not 1.7.0), bio (not nio):

Failure detail (here for Java 8, Java 11 similar):

Testcase: testCustomTrustManager2 took 0.182 sec
        FAILED
Unexpected end of file from server
junit.framework.AssertionFailedError: Unexpected end of file from server
at org.apache.tomcat.util.net.TestCustomSsl.doTestCustomTrustManager(TestCustomSsl.java:135) at org.apache.tomcat.util.net.TestCustomSsl.testCustomTrustManager2(TestCustomSsl.java:85)


- org.apache.tomcat.util.net.TestClientCertTls13
Only tc7.0.x, RHEL7+SLES12, only Java 11 but bio+nio:

Failure detail (fatal alert: protocol_version in testClientCertPost, testClientCertGet):

Testcase: testClientCertPost took 2.398 sec
        Caused an ERROR
Received fatal alert: protocol_version
javax.net.ssl.SSLHandshakeException: Received fatal alert: protocol_version
at java.base/sun.security.ssl.Alert.createSSLException(Alert.java:128) at java.base/sun.security.ssl.Alert.createSSLException(Alert.java:117) at java.base/sun.security.ssl.TransportContext.fatal(TransportContext.java:308) at java.base/sun.security.ssl.Alert$AlertConsumer.consume(Alert.java:279) at java.base/sun.security.ssl.TransportContext.dispatch(TransportContext.java:181) at java.base/sun.security.ssl.SSLTransport.decode(SSLTransport.java:164) at java.base/sun.security.ssl.SSLSocketImpl.decode(SSLSocketImpl.java:1152) at java.base/sun.security.ssl.SSLSocketImpl.readHandshakeRecord(SSLSocketImpl.java:1063) at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:402) at java.base/sun.net.www.protocol.https.HttpsClient.afterConnect(HttpsClient.java:567) at java.base/sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:185) at java.base/sun.net.www.protocol.https.HttpsURLConnectionImpl.connect(HttpsURLConnectionImpl.java:163) at org.apache.catalina.startup.TomcatBaseTest.postUrl(TomcatBaseTest.java:728) at org.apache.catalina.startup.TomcatBaseTest.postUrl(TomcatBaseTest.java:703) at org.apache.tomcat.util.net.TestClientCertTls13.testClientCertPost(TestClientCertTls13.java:59) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

Testcase: testClientCertGet took 0.123 sec
        Caused an ERROR
Received fatal alert: protocol_version
javax.net.ssl.SSLHandshakeException: Received fatal alert: protocol_version
at java.base/sun.security.ssl.Alert.createSSLException(Alert.java:128) at java.base/sun.security.ssl.Alert.createSSLException(Alert.java:117) at java.base/sun.security.ssl.TransportContext.fatal(TransportContext.java:308) at java.base/sun.security.ssl.Alert$AlertConsumer.consume(Alert.java:279) at java.base/sun.security.ssl.TransportContext.dispatch(TransportContext.java:181) at java.base/sun.security.ssl.SSLTransport.decode(SSLTransport.java:164) at java.base/sun.security.ssl.SSLSocketImpl.decode(SSLSocketImpl.java:1152) at java.base/sun.security.ssl.SSLSocketImpl.readHandshakeRecord(SSLSocketImpl.java:1063) at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:402) at java.base/sun.net.www.protocol.https.HttpsClient.afterConnect(HttpsClient.java:567) at java.base/sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:185) at java.base/sun.net.www.protocol.https.HttpsURLConnectionImpl.connect(HttpsURLConnectionImpl.java:163) at org.apache.catalina.startup.TomcatBaseTest.methodUrl(TomcatBaseTest.java:660) at org.apache.catalina.startup.TomcatBaseTest.methodUrl(TomcatBaseTest.java:634) at org.apache.catalina.startup.TomcatBaseTest.getUrl(TomcatBaseTest.java:628) at org.apache.catalina.startup.TomcatBaseTest.getUrl(TomcatBaseTest.java:622) at org.apache.catalina.startup.TomcatBaseTest.getUrl(TomcatBaseTest.java:607) at org.apache.catalina.startup.TomcatBaseTest.getUrl(TomcatBaseTest.java:601) at org.apache.tomcat.util.net.TestClientCertTls13.testClientCertGet(TestClientCertTls13.java:44) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)


- ciphers tests
Failing for RHEL7 and SLES12 on tc8.5.x and tc9.0.x nio+nio2,
any tested Java version:
org.apache.tomcat.util.net.openssl.ciphers.TestOpenSSLCipherConfigurationParser
org.apache.tomcat.util.net.openssl.ciphers.TestCipher

Probably false positive, because no special OpenSSL version was given for the test, so using platform openssl.


Regards,

Rainer

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

Reply via email to