-
Bug
-
Resolution: Fixed
-
P1
-
11
-
b20
-
b28
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-8210176 | 12 | Bradford Wetmore | P1 | Resolved | Fixed | b09 |
JDK-8210085 | 11.0.2 | Bradford Wetmore | P1 | Resolved | Fixed | b01 |
JDK-8210077 | 11.0.1 | Bradford Wetmore | P1 | Resolved | Fixed | b08 |
JDK-8256872 | openjdk8u272 | Martin Balao Alonso | P1 | Closed | Fixed | b06 |
JDK-8243726 | 8u261 | Prasadarao Koppula | P1 | Closed | Fixed | b05 |
JDK-8247060 | emb-8u261 | Prasadarao Koppula | P1 | Resolved | Fixed | team |
Specifically, the behavior change is when the *SSLHandshakeException* is thrown,
For TLSv1.2 ( with JDKb15), it is thrown immediately when server encounters the fatal error and *tries to send the fatal error to peer*
For TLSv1.3 or TLSv1.2 (JDKb20), it is thrown after the server *successfully* sends the fatal error and *fails during when client receives the fatal error*
For TLSv1.2 , In pre-JDKb20 (tested with JDKb15),
1. Client wraps 264 bytes and goes to NEED_UNWRAP
2. Server unwraps 264 bytes and goes to NEED_TASK
3. Server runs delegated tasks and fails with fatal error: no_application_protocol (from logs), but API from java does not throw any error yet, and status changes to NEED_WRAP
4. Server tries to wrap and the “wrap” call throws SSLHandshakeException: No matching ALPN values
For TLS 1.3/TLSv1.2 (JDKb20),
1. Client wraps 437 bytes and goes to NEED_UNWRAP
2. Server unwraps 437 bytes and goes to NEED_TASK
3. Server runs delegated tasks and fails with Fatal (NO_APPLICATION_PROTOCOL) (from logs), but API from java does not throw any error yet ,and status changes to NEED_WRAP
4. Server wraps 7 bytes and goes to NOT_HANDSHAKING (over all status to CLOSED) and DOES NOT throw SSLHandshakeException - THIS IS THE CHANGE IN BEHAVIOR FROM TLSv1.2
5. Client tries to unwrap 7 bytes and “unwrap” call throws SSLHandshakeException: Received fatal alert: no_application_protocol
- backported by
-
JDK-8210077 SSLEngine negotiation fail exception behavior changed from fail-fast to fail-lazy
-
- Resolved
-
-
JDK-8210085 SSLEngine negotiation fail exception behavior changed from fail-fast to fail-lazy
-
- Resolved
-
-
JDK-8210176 SSLEngine negotiation fail exception behavior changed from fail-fast to fail-lazy
-
- Resolved
-
-
JDK-8247060 SSLEngine negotiation fail exception behavior changed from fail-fast to fail-lazy
-
- Resolved
-
-
JDK-8243726 SSLEngine negotiation fail exception behavior changed from fail-fast to fail-lazy
-
- Closed
-
-
JDK-8256872 SSLEngine negotiation fail exception behavior changed from fail-fast to fail-lazy
-
- Closed
-