Code review of JDK-8072385, Only the first DNSName entry is checked for endpoint identification

Jamil Nimeh jamil.j.nimeh at oracle.com
Fri Mar 20 22:00:34 UTC 2015


Hi Xuelei, this looks good to me.

--Jamil

On 3/9/2015 10:52 PM, Xuelei Fan wrote:
> On 3/10/2015 12:27 PM, Jamil Nimeh wrote:
>> Hi Xuelei, I can't be an official reviewer, but I did look over the code
>> and it looks pretty good to me.
> I think it is OK to push if you reviewed the code.
>
>> I did have a couple questions though:
>>
>>    * Line 1570
>>        o Since the getSubjectAltNames() method is generic enough to take
>>          any int type it might be worthwhile to put some comments into
>>          the header stating that only those subjectAltName types that use
>>          String data should be passed into this function (see follow-on
>>          question below).
> Good point.  I added a note comment and updated the webrev.
>
>>    * Line 1580
>>        o If, for some reason, a maintainer were to ever pass in a
>>          different altname value, like 4 (X400Address), wouldn't the code
>>          cause a ClassCastException when trying to cast the returned
>>          byte[] to a String?  Would it be worthwhile to either do a
>>          instanceof check on the returned value before the cast or catch
>>          the CCE before it goes up the stack?  Or is it your desire to
>>          let the CCE be thrown?  I ask only because earlier in
>>          isIdentityEquivalent() you take the time to catch parsing
>>          exceptions and handle it with a log message rather than let it
>>          unwind the stack.  Would it be worthwhile to do something
>>          similar with a CCE down in getSubjectAltNames()?
>>
> It's better to check the instance for a good coding experiences.
>
> It's safe here as for subjectAltName type of DNS and IPAddress, the data
> type is String.  See the spec of
> X509Certificate.getSubjectAlternativeNames().
>
> We have the similar code in sun/security/util/HostnameChecker.java.
>
> Thanks,
> Xuelei
>
>> But even as-is, this still looks good to me.
>>
>> --Jamil
>>
>> On 03/09/2015 05:24 PM, Xuelei Fan wrote:
>>> Ping ...
>>>
>>> wbrev: http://cr.openjdk.java.net/~xuelei/8072385/webrev.00/
>>>
>>> On 3/4/2015 10:51 PM, Xuelei Fan wrote:
>>>> Hi,
>>>>
>>>> Please review the fix for:
>>>>     https://bugs.openjdk.java.net/browse/JDK-8072385
>>>>
>>>> In SunJSSE implementation, during endpoint identification, there is a
>>>> bug in SubjectAlternativeName matching that only the fist DNSName are
>>>> checked. As may impact some business where host-name alias are used.
>>>>
>>>> The patch is attached.
>>>>
>>>> Thanks,
>>>> Xuelei
>>>>




More information about the security-dev mailing list