提交 8ed63957 编写于 作者: A alanb

7060243: (dc) Multicasting tests fail on Windows XP if IPv6 is enabled

Reviewed-by: alanb
Contributed-by: kurchi.subhra.hazra@oracle.com
上级 57e847e9
...@@ -57,11 +57,22 @@ class NetworkConfiguration { ...@@ -57,11 +57,22 @@ class NetworkConfiguration {
return ip6Interfaces.get(nif); return ip6Interfaces.get(nif);
} }
// IPv6 not supported for Windows XP/Server 2003
static boolean isIPv6Supported() {
if (System.getProperty("os.name").startsWith("Windows")) {
String ver = System.getProperty("os.version");
int major = Integer.parseInt(ver.split("\\.")[0]);
return (major >= 6);
}
return true;
}
static NetworkConfiguration probe() throws IOException { static NetworkConfiguration probe() throws IOException {
Map<NetworkInterface,List<InetAddress>> ip4Interfaces = Map<NetworkInterface,List<InetAddress>> ip4Interfaces =
new HashMap<NetworkInterface,List<InetAddress>>(); new HashMap<NetworkInterface,List<InetAddress>>();
Map<NetworkInterface,List<InetAddress>> ip6Interfaces = Map<NetworkInterface,List<InetAddress>> ip6Interfaces =
new HashMap<NetworkInterface,List<InetAddress>>(); new HashMap<NetworkInterface,List<InetAddress>>();
boolean isIPv6Supported = isIPv6Supported();
// find the interfaces that support IPv4 and IPv6 // find the interfaces that support IPv4 and IPv6
List<NetworkInterface> nifs = Collections List<NetworkInterface> nifs = Collections
...@@ -81,7 +92,7 @@ class NetworkConfiguration { ...@@ -81,7 +92,7 @@ class NetworkConfiguration {
} }
list.add(addr); list.add(addr);
ip4Interfaces.put(nif, list); ip4Interfaces.put(nif, list);
} else if (addr instanceof Inet6Address) { } else if (isIPv6Supported && (addr instanceof Inet6Address)) {
List<InetAddress> list = ip6Interfaces.get(nif); List<InetAddress> list = ip6Interfaces.get(nif);
if (list == null) { if (list == null) {
list = new LinkedList<InetAddress>(); list = new LinkedList<InetAddress>();
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册
新手
引导
客服 返回
顶部