RFR: 8344366: Remove Security Manager dependencies from javax.net.ssl and sun.security.ssl packages [v2]
Sean Mullan
mullan at openjdk.org
Fri Nov 22 16:38:01 UTC 2024
> 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.
Sean Mullan has updated the pull request incrementally with one additional commit since the last revision:
Revert @see text in TrustManagerFactory.
Remove sun.security.action.OpenFileInputStreamAction.
-------------
Changes:
- all: https://git.openjdk.org/jdk/pull/22301/files
- new: https://git.openjdk.org/jdk/pull/22301/files/e2525d8a..bdb705c8
Webrevs:
- full: https://webrevs.openjdk.org/?repo=jdk&pr=22301&range=01
- incr: https://webrevs.openjdk.org/?repo=jdk&pr=22301&range=00-01
Stats: 65 lines in 3 files changed: 0 ins; 63 del; 2 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
More information about the net-dev
mailing list