RFR: JDK-8280498: [aix]: jdk/java/net/Inet4Address/PingThis.java fails
Michael Felt
aixtools at felt.demon.nl
Fri Jan 28 15:20:10 UTC 2022
-----Original Message-----
From: net-dev <net-dev-retn at openjdk.java.net> On Behalf Of Michael McMahon
Sent: Friday, 28 January 2022 16:14
To: net-dev at openjdk.java.net
Subject: Re: RFR: JDK-8280498: [aix]: jdk/java/net/Inet4Address/PingThis.java fails
On Fri, 28 Jan 2022 14:46:32 GMT, Michael Felt <duke at openjdk.java.net> wrote:
>> If it defeats the purpose, then it needs to be skipped.
>>
>> * When I was trying to understand the test, it seemed to be that it _assumed_ that "0.0.0.0" was 'converted' to 127.0.0.1.
>> * If there is an international standard (ISO, POSIX) that states 0.0.0.0 needs to be treated as 127.0.0.1 - AIX clearly has a bug. Same for `::)` mapping to `::1` - AIX doesn't do that IPv4 (now), and, afaik, never has for IPv6.
>> * While testing I also saw that AIX reacts differently (error message iirc) when passed NULL, whereas it behaves "as expected" when given a null-string `""`
>> * FYI: Adoptium has put this test on the excluded list, but if a fix using `""` rather than "0.0.0.0" and/or "::1" rather than "::0", the test should perhaps state the exclusion as a comment in the code, and return immediately, as it does for Windows.
>
>> Or is it possible to change the implementation on AIX so the test passes without change?
>
> * Digging into the java guts to map "0.0.0.0" to "127.0.0.1" seems too far to me - as I believe interfaces are not suppossed to be "translating" as well.
> * If the behavior "0.0.0.0" becomes "127.0.0.1" is an official standard - a bug needs to be filed with IBM (which I cannot do) - but we need to also be aware that any fix to AIX is not likely to ever be applied on AIX 7.1 TL4 (maybe TL5) which are systems used to build distributions.
> * Again - being a noob (or fresh face; fresh meat) the test title is merely "PingThis" - where is "This" defined as "0.0.0.0" (if it had been named _PingHERE_ I could understand as the alias, iirc, for 0.0.0.0 is "Here".
Might be better to skip the test then by adding to the header:
*
* @requires os.family != "aix"
*
rather than the check in the test source
And maybe remove this:
```
if (System.getProperty("os.name").startsWith("Windows")) {
return;
}
```
And also state in header something similar for Windows.
a) consistency
b) a change is required to be pushed (and back-ported :please: either way
-------------
PR: https://git.openjdk.java.net/jdk/pull/7013
More information about the net-dev
mailing list