RFR: JDK-8308398 Move SunEC crypto provider into java.base [v2]

Valerie Peng valeriep at openjdk.org
Thu Jun 29 18:39:25 UTC 2023


On Mon, 26 Jun 2023 22:52:18 GMT, Anthony Scarpino <ascarpino at openjdk.org> wrote:

>> Hi,
>> 
>> I need a code review for moving the contents of the jdk.crypto.ec module into java.base.  This moves the SunEC JCE Provider (Elliptic Curve) into java.base.  EC has always been separate from the base module/pkg because of its dependence on a native library.  That library was removed in JDK 16.  An empty jdk.crypto.ec module will remain for compatibility, but marked as deprecated with the intent to be removed in a future release.
>> 
>> There should be no compatibility risk for application using EC through JCE. There are no public API changes to EC, XEC, and EdDSA classes .  Applications that unwisely accessing internal EC classes will need to use the java.base module.
>> 
>> Thanks
>> 
>> Tony
>
> Anthony Scarpino has updated the pull request incrementally with one additional commit since the last revision:
> 
>   update for review:  changed test, removed commented out code in module, fixed switch statement, added --limit-modules

src/java.base/share/classes/sun/security/jca/ProviderConfig.java line 235:

> 233:             provider = p;
> 234:         }
> 235:         return provider;

Why changing it to return 'provider', is this change intentional? IIRC, the general pattern is to return the local reference instead of a volatile variable.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/14457#discussion_r1246975681



More information about the security-dev mailing list