On Fri, 28 Jan 2022 15:15:06 GMT, Daniel Fuchs <dfu...@openjdk.org> wrote:
> From the description and evaluation of > [JDK-7163874](https://bugs.openjdk.java.net/browse/JDK-7163874) it seems that > skipping this test on AIX would be reasonable. > > Some operating systems seem to accept 0.0.0.0 as input - and reply with > 127.0.0.1. The changes made for JDK-7163874 simply makes sure that such a > reply is not rejected as invalid on the ground that the received address is > not the same as the input address. If 0.0.0.0 is not a valid input for the > underlying operating system, then the test has no object and should probably > be skipped. Being a bit more specific - especially re: valid address: - On AIX ping ::0 is not valid aixtools@x064:[aixtools]ping ::0 ping: bind: The socket name is not available on this system. - On AIX ping 0.0.0.0 is not invalid, but how it responds ETH: ====( 98 bytes transmitted on interface en0 )==== 16:13:13.970131171 ETH: [ 00:21:5e:a3:c7:44 -> 44:4e:6d:fa:4b:fe ] type 800 (IP) IP: < SRC = 192.168.129.64 > (x064) IP: < DST = 0.0.0.0 > IP: ip_v=4, ip_hl=20, ip_tos=0, ip_len=84, ip_id=63721, ip_off=0 IP: ip_ttl=255, ip_sum=80d6, ip_p = 1 (ICMP) ICMP: icmp_type=8 (ECHO_REQUEST) icmp_id=216 icmp_seq=516 - In special cases - when there are devices external to the (virtual) machine, that respond to 0.0.0.0 you get the address of the replying device: root@p8-java1-adopt07:[/root]ping 0.0.0.0 PING 0.0.0.0 (0.0.0.0): 56 data bytes 64 bytes from 140.211.9.1: icmp_seq=0 ttl=255 time=11 ms 64 bytes from 140.211.9.1: icmp_seq=1 ttl=255 time=12 ms 64 bytes from 140.211.9.1: icmp_seq=2 ttl=255 time=0 ms - At trace level: ETH: ====( 98 bytes transmitted on interface en1 )==== 16:19:39.475020041 ETH: [ 12:31:9e:0f:73:03 -> 58:bc:27:ae:b0:50 ] type 800 (IP) IP: < SRC = 140.211.9.168 > (p8-java1-adopt07) IP: < DST = 0.0.0.0 > IP: ip_v=4, ip_hl=20, ip_tos=0, ip_len=84, ip_id=23686, ip_off=0 IP: ip_ttl=255, ip_sum=c8a7, ip_p = 1 (ICMP) ICMP: icmp_type=8 (ECHO_REQUEST) icmp_id=238 icmp_seq=18 ETH: ====( 98 bytes received on interface en1 )==== 16:19:39.475356474 ETH: [ 58:bc:27:ae:b0:50 -> 12:31:9e:0f:73:03 ] type 800 (IP) IP: < SRC = 140.211.9.1 > (corv-car1-gw.nero.net) IP: < DST = 140.211.9.168 > (p8-java1-adopt07) IP: ip_v=4, ip_hl=20, ip_tos=0, ip_len=84, ip_id=23686, ip_off=0 IP: ip_ttl=255, ip_sum=32d3, ip_p = 1 (ICMP) ICMP: icmp_type=0 (ECHO_REPLY) icmp_id=238 icmp_seq=18 In conclusion: the `solution` is most likely to skip the test, just as it is skipped for Windows. a) address `::0` is not valid b) a response to IPv4: 0.0.0.0 depends on an external device responding to `0.0.0.0` I'll make the basic changes - but I am sure to need help with text (the right bug number, or whatever) that needs to go into the code. ------------- PR: https://git.openjdk.java.net/jdk/pull/7013