RFR: 8170544: Fix code scan findings in libnet
Langer, Christoph
christoph.langer at sap.com
Fri Jan 13 12:20:15 UTC 2017
Hi,
I finally pushed the change: http://hg.openjdk.java.net/jdk9/dev/jdk/rev/f3115622562a
Best regards
Christoph
> -----Original Message-----
> From: Langer, Christoph
> Sent: Mittwoch, 11. Januar 2017 16:50
> To: 'Chris Hegarty' <chris.hegarty at oracle.com>
> Cc: Lindenmaier, Goetz <goetz.lindenmaier at sap.com>; net-
> dev at openjdk.java.net; Michael McMahon <michael.x.mcmahon at oracle.com>
> Subject: RE: RFR: 8170544: Fix code scan findings in libnet
>
> Hi Chris,
>
> thanks for looking.
>
> > 1) NetworkInterface.c
> >
> > I’m not sure that the close is really necessary, since a JNI pending
> > exception can only be thrown is sock is less than 0. I think just
> > removing the ' && (*env)->ExceptionOccurred(env)’ from the original
> > if statement should be sufficient, no?
>
> I think you are right. An exception can only occur if socket is less than 0. There
> is one case where socket could be less than 0 and no exception occurred. In
> that case we'd probably see an exception later on. But I think it would be fine to
> return NULL in case socket is < 0. Generally, this coding needs to be revisited in
> order to make it work for IPv6 only systems. We should do that when finishing
> up bug 8148424 [1].
>
> > 2) net_util.c
> >
> > getInet6Address_scopeid_set should CHECK_NULL_RETURN(holder,
> JNI_FALSE)?
> > getInet6Address_scopeid now returns an unsigned in, why
> CHECK_NULL_RETURN(holder, -1)?
> >
> > Some of this, existing, code seems a little dubious.
> >
>
> Good catch. The CHECK_NULL_RETURN macros need adaption. The reason why
> getInet6Address_scopeid should return unsigned int is that the struct
> sockaddr_in6 is also using unsigned int for the scope, e.g. on Linux [2] or
> Windows [3].
>
> I've addressed your points in
> http://cr.openjdk.java.net/~clanger/webrevs/8170544.2/ Would you want to
> run this through JPRT again?
>
> I would go and push it towards the end of the week.
>
> Best regards
> Christoph
>
> [1] https://bugs.openjdk.java.net/browse/JDK-8148424
> [2] http://man7.org/linux/man-pages/man7/ipv6.7.html
> [3] https://msdn.microsoft.com/en-
> us/library/windows/hardware/ff570824(v=vs.85).aspx
>
More information about the net-dev
mailing list