-
Bug
-
Resolution: Fixed
-
P4
-
8, 11, 13, 15, 16
-
b11
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-8267001 | 16u-cpu | Christoph Langer | P4 | Resolved | Fixed | master |
JDK-8264627 | 16.0.2 | Christoph Langer | P4 | Resolved | Fixed | b04 |
JDK-8264384 | 11.0.14-oracle | Prasadarao Koppula | P4 | Resolved | Fixed | b01 |
JDK-8263435 | 11.0.12 | Clive Verghese | P4 | Resolved | Fixed | b01 |
JDK-8264383 | 8u321 | Prasadarao Koppula | P4 | Resolved | Fixed | b01 |
OpenJDK8u 265 had the following contract with the client
* . if there is an IOException (SocketException) when accessing the
* underlying Socket, pass it through
*
* . do not throw IOExceptions, throw SSLExceptions (or a subclass)
*
SSLSocketImpl.java#l69 (http://hg.openjdk.java.net/jdk8u/jdk8u/jdk/file/9204e03217f7/src/share/classes/sun/security/ssl/SSLSocketImpl.java#l69)
The TLS stack would pass through SocketException. It would wrap other IOExceptions into an SSLException. However, The implementation of TLS1.3 stack changed this behavior [
The error handling guidelines present in OpenJDK8u265 and previous versions were used by the application layer to determine how to react to the exception. The application layer would consider SocketExceptions to be retry-able and would retry the request or have other special handling. This issue was also reported by ApacheHTTPClient in HTTPCLIENT-2032 (https://issues.apache.org/jira/browse/HTTPCLIENT-2032). The application started seeing SSLException: Broken Pipe. this was due to the SocketException being converted to an SSLException.
The application now was unable to determine if the failure was due to a retry-able socket exception or a more permanent SSLException.
- backported by
-
JDK-8263435 Don't wrap SocketExceptions into SSLExceptions in SSLSocketImpl
- Resolved
-
JDK-8264383 Don't wrap SocketExceptions into SSLExceptions in SSLSocketImpl
- Resolved
-
JDK-8264384 Don't wrap SocketExceptions into SSLExceptions in SSLSocketImpl
- Resolved
-
JDK-8264627 Don't wrap SocketExceptions into SSLExceptions in SSLSocketImpl
- Resolved
-
JDK-8267001 Don't wrap SocketExceptions into SSLExceptions in SSLSocketImpl
- Resolved
- csr for
-
JDK-8259847 Don't wrap SocketExceptions into SSLExceptions in SSLSocketImpl
- Closed
- is blocked by
-
JDK-8259516 Alerts sent by peer may not be received correctly during TLS handshake
- Open
- relates to
-
JDK-8262436 SSL test failures caused by java.net.SocketException
- Closed
-
JDK-8237578 JDK-8214339 (SSLSocketImpl wraps SocketException) appears to not be fully fixed
- Closed
-
JDK-8262409 sun/security/ssl/SSLSocketImpl/SSLSocketImplThrowsWrongExceptions. SSL test failures caused by java failed with "Server reported the wrong exception"
- Resolved
-
JDK-8259582 Backout JDK-8237578 until all affected tests have been fixed
- Closed
-
JDK-8259572 [test] Fix SSL tests after JDK-8237578 to properly handle SocketExceptions
- Closed
- links to
-
Commit openjdk/jdk16u/27c84494
-
Commit openjdk/jdk/63f8fc87
-
Review openjdk/jdk16u/93
-
Review openjdk/jdk16u/94
-
Review openjdk/jdk/2057