[prev in list] [next in list] [prev in thread] [next in thread]
List: openjdk-net-dev
Subject: Re: RFR: 8308807: [AIX] MulticastSocket and jdp test fails due to joinGroup
From: Mark Sheppard <msheppar () openjdk ! org>
Date: 2023-05-25 11:21:57
Message-ID: qxx7kBv2qUW4mUOHUV2Lrtkpwqwo9NzyDnRHXCNpltE=.311ed661-76fd-4a59-9d05-8259cb1bc791 () github ! com
[Download RAW message or body]
On Thu, 25 May 2023 07:14:19 GMT, Deepa Kumari <duke@openjdk.org> wrote:
> DatagramSocket delegates to an inner DatagramSocket object. Irrespective of whether \
> datagramSocket is IPv4 or IPv6, we create an IPv6 datagramChannel as its's \
> delegate. So, This can cause problems with operations like joinGroup.
> On AIX, IPv6 datagramSocket can not join an IPv4 multicast group.
>
> These failures can be fixed by making sure that the delegate created for a datagram \
> socket has the same protocol family.
>
>
>
> Reported Issue : [JDK-8308807](https://bugs.openjdk.org/browse/JDK-8308807)
at a cursory glance, and without a deep dive to follow any associated call flows into \
native code, these changes look like the are not aligned with the semantics espoused \
in the systems newtwork properties, especially that of the first:
IPv4 / IPv6
java.net.preferIPv4Stack (default: false)
If IPv6 is available on the operating system the underlying native socket will \
be, by default, an IPv6 socket which lets applications connect to, and accept \
connections from, both IPv4 and IPv6 hosts. However, in the case an application would \
rather use IPv4 only sockets, then this property can be set to true. The implication \
is that it will not be possible for the application to communicate with IPv6 only \
hosts.
java.net.preferIPv6Addresses (default: false)
When dealing with a host which has both IPv4 and IPv6 addresses, and if IPv6 is \
available on the operating system, the default behavior is to prefer using IPv4 \
addresses over IPv6 ones. This is to ensure backward compatibility: for example, for \
applications that depend on the representation of an IPv4 address (e.g. 192.168.1.1). \
This property can be set to true to change that preference and use IPv6 addresses \
over IPv4 ones where possible, or system to preserve the order of the addresses as \
returned by the system-wide resolver
-------------
PR Comment: https://git.openjdk.org/jdk/pull/14142#issuecomment-1562728340
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic