RFR: 8280890: Cannot use '-Djava.system.class.loader' with class loader in signed JAR [v2]
Jaikiran Pai
jpai at openjdk.java.net
Mon Feb 7 03:29:05 UTC 2022
On Sun, 6 Feb 2022 19:51:05 GMT, Sean Mullan <mullan at openjdk.org> wrote:
>> This fixes a bootstrapping issue if a custom system class loader is set with the `-Djava.system.class.loader` option and the custom class loader is inside a signed JAR. In order to load the custom class loader, the runtime must verify the signed JAR first, and the algorithm constraint code tries to load a `Locale` provider using a `ServiceLoader` before the class loader is set, and this causes a `ServiceConfigurationError`.
>>
>> The fix removes a dependency from the security algorithm "denyAfter" constraint parsing code on the `Calendar` API which uses a `ServiceLoader` for gathering default locale information. Instead the `ZonedDateTime` API is now used, which simplifies the code and removes some unnecessary code from `keytool` as well.
>
> Sean Mullan has updated the pull request incrementally with one additional commit since the last revision:
>
> Check exit status of keytool and jarsigner in test.
Thank you for that change, Sean. Looks fine to me.
-------------
PR: https://git.openjdk.java.net/jdk/pull/7316
More information about the security-dev
mailing list