Now that JEP 486 has been integrated, the `javax.net.ssl` and 
`sun.security.ssl` package implementation dependencies on 
`System.getSecurityManager`, `AccessController.doPrivileged` and 
`AccessControlContext` can be removed.

Most of the changes are straightforward: removal of code calling 
`System.getSecurityManager()` and unwrapping of code inside 
`AccessController.doPrivileged`. However, two changes involved slightly more 
complicated work:

1. `sun.security.ssl.SSLConfiguration` no longer needs to capture the access 
control context of `javax.net.ssl.HandshakeCompletedListener` objects, which 
means it can store the listeners in a `HashSet` instead of a `HashMap`.
2. `sun.security.ssl.SSLSessionImpl` (which implements 
`javax.net.ssl.SSLSession`) does not need to store attributes based on access 
control contexts anymore, which means it can store the keys as Strings instead 
of one that combines the key and the access control context.
3. `sun.security.ssl.TransportContext` does not need to capture the access 
control context anymore.

-------------

Commit messages:
 - Undo changes to SSLEngine and SSLSession - those are being done in 
JDK-8344652.
 - Merge
 - Initial cleanup.

Changes: https://git.openjdk.org/jdk/pull/22301/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=22301&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8344366
  Stats: 399 lines in 24 files changed: 19 ins; 249 del; 131 mod
  Patch: https://git.openjdk.org/jdk/pull/22301.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/22301/head:pull/22301

PR: https://git.openjdk.org/jdk/pull/22301

Reply via email to