RFR 8039853: Provider.Service.newInstance() does not work with current JDK JGSS Mechanisms

Wang Weijun weijun.wang at oracle.com
Thu Apr 17 01:49:34 UTC 2014


http://hg.openjdk.java.net/jdk9/dev/jdk/rev/d993a3fc9b19

Thanks
Max

On Apr 17, 2014, at 6:49, Bradford Wetmore <Bradford.Wetmore at Oracle.COM> wrote:

> Thanks Weijun,
> 
> The main class is fine.
> 
> In the test case, I would suggest adding a comment before the InvalidAlgorithmParameterException that some engines require certain parameters to be be present on creation, and a newInstance(null) will trigger that exception.
> 
> HTH,
> 
> Brad
> 
> 
> 
> On 4/15/2014 8:01 AM, Sean Mullan wrote:
>> Looks fine to me.
>> 
>> --Sean
>> 
>> On 04/15/2014 04:03 AM, Wang Weijun wrote:
>>> Please review the code changes at
>>> 
>>>   http://cr.openjdk.java.net/~weijun/8039853/webrev.00/
>>> 
>>> If you find it confused, I have mistakenly pushed some code changes in
>>> 
>>>   http://hg.openjdk.java.net/jdk9/dev/jdk/rev/ba6e2fcdfa15
>>> 
>>> and the current code change is trying to fix/enhance it. Altogether,
>>> the actual change I want to make is:
>>> 
>>> diff --git
>>> a/src/share/classes/sun/security/jgss/krb5/Krb5MechFactory.java
>>> b/src/share/classes/sun/security/jgss/krb5/Krb5MechFactory.java
>>> --- a/src/share/classes/sun/security/jgss/krb5/Krb5MechFactory.java
>>> +++ b/src/share/classes/sun/security/jgss/krb5/Krb5MechFactory.java
>>> @@ -86,6 +86,10 @@
>>>          return result;
>>>      }
>>> 
>>> +    public Krb5MechFactory() {
>>> +        this(GSSCaller.CALLER_UNKNOWN);
>>> +    }
>>> +
>>>      public Krb5MechFactory(GSSCaller caller) {
>>>          this.caller = caller;
>>>      }
>>> diff --git
>>> a/src/share/classes/sun/security/jgss/spnego/SpNegoMechFactory.java
>>> b/src/share/classes/sun/security/jgss/spnego/SpNegoMechFactory.java
>>> --- a/src/share/classes/sun/security/jgss/spnego/SpNegoMechFactory.java
>>> +++ b/src/share/classes/sun/security/jgss/spnego/SpNegoMechFactory.java
>>> @@ -96,6 +96,10 @@
>>>          return result;
>>>      }
>>> 
>>> +    public SpNegoMechFactory() {
>>> +        this(GSSCaller.CALLER_UNKNOWN);
>>> +    }
>>> +
>>>      public SpNegoMechFactory(GSSCaller caller) {
>>>          manager = new GSSManagerImpl(caller, false);
>>>          Oid[] mechs = manager.getMechs();
>>> 
>>> Please note that the previous change made in
>>> src/share/classes/java/security/Provider.java is now backed out.
>>> 
>>> Thanks
>>> Max
>>> 




More information about the security-dev mailing list