JDK 16 RFR of JDK-8250246: Address reliance on default constructors in security libs

Sean Mullan sean.mullan at oracle.com
Fri Jul 24 11:52:50 UTC 2020


Hi Joe,

On 7/24/20 1:17 AM, Joe Darcy wrote:
> Hello,
> 
> Please review a set of changes to add explicit constructors to replace 
> default (implicit) constructors in various classes in security libs 
> across several modules:
> 
>      JDK-8250246: Address reliance on default constructors in security libs
>      http://cr.openjdk.java.net/~darcy/8250246.0/
>      CSR: https://bugs.openjdk.java.net/browse/JDK-8250248
> 
> (This is a companion to similar changes being made across other 
> libraries in preparation for creating a new javac lint warning.)
> 
> One of the classes seems to only accidentally have a constructor, so I 
> added that one as terminally deprecated.

You have not updated the copyright dates; not sure if that is necessary 
for this type of change.

- src/jdk.security.jgss/share/classes/com/sun/security/jgss/GSSUtil.java

   37     /**
   38      * Do not call.
   39      */
   40     @Deprecated(since="16", forRemoval=true)
   41     public GSSUtil() {}

Is your concern that there may be some code out there that might be 
erroneously using the default constructor so you want to give some 
warning first before making this a private ctor after it is removed? (I 
think I agree, but I want to make sure I understand your thinking).

- 
src/jdk.security.auth/share/classes/com/sun/security/auth/module/NTLoginModule.java

87      * Creates a {@code NTLoginModule}.

s/a/an/

- 
src/jdk.security.auth/share/classes/com/sun/security/auth/module/LdapLoginModule.java

359      * Creates a {@code LdapLoginModule}.

s/a/an/

--Sean



More information about the security-dev mailing list