On Fri, 19 Feb 2021 14:48:39 GMT, Conor Cleary <ccle...@openjdk.org> wrote:
>> Jamie Le Tual has updated the pull request incrementally with one additional >> commit since the last revision: >> >> Fixed formatting > > src/java.base/unix/native/libnet/Inet4AddressImpl.c line 375: > >> 373: icmp->icmp_type = ICMP_ECHO; >> 374: icmp->icmp_code = 0; >> 375: // same result as downcasting the little-endian pid, although >> we are not longer > > I don't think this is true. When downcasting the pid (which is at this stage > in Nework/Big-Endian Order), the host order will be considered. Assuming that > the downcast is to `uint16_t`, which it looks like is what icmp_id takes, the > 16 least significant bits will be considered (if the host machine is > little-endian of course). This is different from the 16 bit right shift. Here > is some example output from a short C program I wrote (output is in hex to > more easily demonstrate bitwise ops): > > pid size: 4 > int size: 4 > > getpid() testing: > pid = be67f > htonl = 7fe60b00 > cast = b00 >>> 16 = 7fe6 On that note, is it ok to ignore any bits that are shifted out? For example, `7fe60b00 >> 16` results in `00007fe6` while the trailing `0b00` is ignored. ------------- PR: https://git.openjdk.java.net/jdk/pull/1502