JDK-8298868 : Update EngineCloseOnAlert.java for changes to TLS implementation
  • Type: Bug
  • Component: security-libs
  • Sub-Component: javax.net.ssl
  • Priority: P4
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2022-12-15
  • Updated: 2024-08-20
  • Resolved: 2023-02-09
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 11 JDK 17 JDK 21
11.0.25-oracleFixed 17.0.10-oracleFixed 21 b10Fixed
Related Reports
Relates :  
Description
This test fails due to changes in the underlying implementation. Verify the test is still valid and and update accordingly.

Test failures:

=======================================
Test: Client receives alert from server
=======================================
Client handshake status: NEED_UNWRAP, inDone = false, outDone = false
Client-to-Server:
-----------------
16:03:03:01:B7:01:00:01:B3:03:03:1F:38:63:41:5A
C7:E1:3E:71:B1:AF:86:EE:4B:CE:7B:50:15:94:C0:67
3B:CD:27:AC:A8:A0:B5:2E:69:A2:A7:20:4C:98:D8:6F
B2:8C:3D:5B:37:DB:DB:CD:15:09:FC:70:F5:F8:71:FF
6B:FA:63:1D:16:5F:85:86:A5:B5:9A:AC:00:4A:13:02
13:01:13:03:C0:2C:C0:2B:CC:A9:C0:30:CC:A8:C0:2F
00:9F:CC:AA:00:A3:00:9E:00:A2:C0:24:C0:28:C0:23
C0:27:00:6B:00:6A:00:67:00:40:C0:0A:C0:14:C0:09
C0:13:00:39:00:38:00:33:00:32:00:9D:00:9C:00:3D
00:3C:00:35:00:2F:00:FF:01:00:01:20:00:05:00:05
01:00:00:00:00:00:0A:00:16:00:14:00:1D:00:17:00
18:00:19:00:1E:01:00:01:01:01:02:01:03:01:04:00
0B:00:02:01:00:00:11:00:09:00:07:02:00:04:00:00
00:00:00:17:00:00:00:23:00:00:00:0D:00:2C:00:2A
04:03:05:03:06:03:08:07:08:08:08:04:08:05:08:06
08:09:08:0A:08:0B:04:01:05:01:06:01:04:02:03:03
03:01:03:02:02:03:02:01:02:02:00:2B:00:09:08:03
04:03:03:03:02:03:01:00:2D:00:02:01:01:00:32:00
2C:00:2A:04:03:05:03:06:03:08:07:08:08:08:04:08
05:08:06:08:09:08:0A:08:0B:04:01:05:01:06:01:04
02:03:03:03:01:03:02:02:03:02:01:02:02:00:33:00
6B:00:69:00:1D:00:20:12:83:DD:C0:21:7C:65:EE:13
3C:C6:A5:05:9B:D5:0E:0D:91:8C:B9:93:CB:A5:4F:7B
CA:89:60:8B:FC:68:1C:00:17:00:41:04:1F:09:66:AE
72:20:38:03:68:97:10:C5:7B:ED:1A:E6:A2:C9:70:D7
A8:F3:9B:87:EE:F8:B4:37:90:9D:1E:70:7A:F8:38:A9
36:F3:91:27:0F:6D:30:41:99:5D:99:7A:B7:94:58:FF
C7:57:16:18:56:77:95:41:2A:07:F2:53
Server handshake status: NEED_TASK, inDone = false, outDone = false
Server result: Status = OK HandshakeStatus = NEED_TASK
bytesConsumed = 444 bytesProduced = 0
    running delegated task...
    new HandshakeStatus: NEED_WRAP
Server handshake status: NEED_WRAP, inDone = true, outDone = false
Server throws exception: javax.net.ssl.SSLHandshakeException: No available authentication scheme
Server engine state: isInboundDone = true, isOutboundDone = false, handshake status = NEED_WRAP
Server handshake status: NEED_WRAP, inDone = true, outDone = false
Server result (wrap after exception): Status = OK HandshakeStatus = NEED_WRAP
bytesConsumed = 0 bytesProduced = 127 sequenceNumber = 0
Server engine closure state: isInboundDone=true, isOutboundDone=false
Exception in test:
java.lang.RuntimeException: Error: engine not in expected state
Expected: state = NEED_UNWRAP, inDone = true, outDone = true
Actual: state = NEED_WRAP, inDone = true, outDone = false
java.lang.RuntimeException: Error: engine not in expected state
Expected: state = NEED_UNWRAP, inDone = true, outDone = true
Actual: state = NEED_WRAP, inDone = true, outDone = false
    at EngineCloseOnAlert.checkEngineState(EngineCloseOnAlert.java:368)
    at EngineCloseOnAlert$2.runTest(EngineCloseOnAlert.java:162)
    at EngineCloseOnAlert.main(EngineCloseOnAlert.java:82)
    at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
    at java.base/java.lang.reflect.Method.invoke(Method.java:578)
    at com.sun.javatest.regtest.agent.MainWrapper$MainThread.run(MainWrapper.java:125)
    at java.base/java.lang.Thread.run(Thread.java:1623)

=======================================
Test: Server receives alert from client
=======================================
Client handshake status: NOT_HANDSHAKING, inDone = false, outDone = false
Client handshake status: NEED_UNWRAP, inDone = false, outDone = false
Client-to-Server:
-----------------
16:03:03:00:B9:01:00:00:B5:03:03:80:20:E9:05:F7
E5:F6:93:BB:32:D9:39:9F:04:ED:B1:C7:30:B2:C1:17
72:1F:19:90:1A:88:7F:7A:EB:8A:65:00:00:02:00:2F
01:00:00:8A:00:05:00:05:01:00:00:00:00:00:11:00
09:00:07:02:00:04:00:00:00:00:00:17:00:00:00:23
00:00:00:0D:00:2C:00:2A:04:03:05:03:06:03:08:07
08:08:08:04:08:05:08:06:08:09:08:0A:08:0B:04:01
05:01:06:01:04:02:03:03:03:01:03:02:02:03:02:01
02:02:00:2B:00:03:02:03:03:00:32:00:2C:00:2A:04
03:05:03:06:03:08:07:08:08:08:04:08:05:08:06:08
09:08:0A:08:0B:04:01:05:01:06:01:04:02:03:03:03
01:03:02:02:03:02:01:02:02:FF:01:00:01:00
Server handshake status: NEED_TASK, inDone = false, outDone = false
    running delegated task...
    new HandshakeStatus: NEED_WRAP
Exception in test:
java.lang.RuntimeException: Error: engine not in expected state
Expected: state = NEED_WRAP, inDone = false, outDone = false
Actual: state = NEED_WRAP, inDone = true, outDone = false
java.lang.RuntimeException: Error: engine not in expected state
Expected: state = NEED_WRAP, inDone = false, outDone = false
Actual: state = NEED_WRAP, inDone = true, outDone = false
    at EngineCloseOnAlert.checkEngineState(EngineCloseOnAlert.java:368)
    at EngineCloseOnAlert$3.runTest(EngineCloseOnAlert.java:228)
    at EngineCloseOnAlert.main(EngineCloseOnAlert.java:82)
    at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
    at java.base/java.lang.reflect.Method.invoke(Method.java:578)
    at com.sun.javatest.regtest.agent.MainWrapper$MainThread.run(MainWrapper.java:125)
    at java.base/java.lang.Thread.run(Thread.java:1623)
Total tests: 2, passed: 0, failed: 2
----------System.err:(11/641)----------
java.lang.RuntimeException: One or more tests failed.
    at EngineCloseOnAlert.main(EngineCloseOnAlert.java:93)
    at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
    at java.base/java.lang.reflect.Method.invoke(Method.java:578)
    at com.sun.javatest.regtest.agent.MainWrapper$MainThread.run(MainWrapper.java:125)
    at java.base/java.lang.Thread.run(Thread.java:1623)

JavaTest Message: Test threw exception: java.lang.RuntimeException: One or more tests failed.
JavaTest Message: shutting down test
Comments
Fix request [17u] I backport this for parity with 17.0.10-oracle. No risk, only a test change. Clean backport. Test passes. SAP nightly testing passed.
07-10-2023

A pull request was submitted for review. URL: https://git.openjdk.org/jdk17u-dev/pull/1847 Date: 2023-10-05 19:11:19 +0000
05-10-2023

Changeset: 7fd440d9 Author: Matthew Donovan <matthew.p.donovan@oracle.com> Committer: Rajan Halade <rhalade@openjdk.org> Date: 2023-02-09 18:21:38 +0000 URL: https://git.openjdk.org/jdk/commit/7fd440d97c2bb7b7a6cd7094e7339d65d23e7815
09-02-2023

A pull request was submitted for review. URL: https://git.openjdk.org/jdk/pull/11903 Date: 2023-01-09 12:19:27 +0000
09-01-2023