On Mon, 15 Dec 2025 13:15:32 GMT, Matthias Baesken <[email protected]> wrote:
> We have a Linux machine with IPV6 disabled.
> There the test javax/net/ssl/HttpsURLConnection/SubjectAltNameIP.java fails.
> Error is
>
> java.lang.RuntimeException: Server failed to start.
> at SubjectAltNameIP.doClientSide(SubjectAltNameIP.java:139)
> at SubjectAltNameIP.<init>(SubjectAltNameIP.java:189)
> at SubjectAltNameIP.main(SubjectAltNameIP.java:176)
> at
> java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
> at java.base/java.lang.reflect.Method.invoke(Method.java:565)
> at
> com.sun.javatest.regtest.agent.MainWrapper$MainTask.run(MainWrapper.java:138)
> at java.base/java.lang.Thread.run(Thread.java:1516)
> Caused by: java.net.SocketException: Protocol family unavailable
>
>
> After looking into the test, it turned out the IPV6 address `::1` was passed
> in the notion `[::1] `to the isIPv6LiteralAddress, but this method must get
> the address without '[' and ']' .
> Additionally I adjusted the exception a bit so that it directly mentions IPV6
> and not just some 'protol family' .
src/java.base/unix/native/libnet/net_util_md.c line 288:
> 286: if (family != java_net_InetAddress_IPv4) {
> 287: if (ipv6av) {
> 288: JNU_ThrowByName(env, JNU_JAVANETPKG "SocketException",
> "Protocol family ipv6, ipv6 on machine available");
This exception does not really make sense. Are you really sure it's possible to
get here?
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/28825#discussion_r2619456018