From db86850d15ac39b097627292c5c35b0dd90fb18d Mon Sep 17 00:00:00 2001 From: zzz <zzz@mail.i2p> Date: Sun, 13 Dec 2015 16:40:42 +0000 Subject: [PATCH] Addresses: Catch a rare (Windows only? IPv6 only?) error when enumerating network interfaces --- core/java/src/net/i2p/util/Addresses.java | 10 +++++++++- router/java/src/net/i2p/router/transport/udp/MTU.java | 8 ++++++++ 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/core/java/src/net/i2p/util/Addresses.java b/core/java/src/net/i2p/util/Addresses.java index 6737a528af..6022bf35b7 100644 --- a/core/java/src/net/i2p/util/Addresses.java +++ b/core/java/src/net/i2p/util/Addresses.java @@ -131,7 +131,15 @@ public abstract class Addresses { } } } - } catch (SocketException e) {} + } catch (SocketException e) { + } catch (java.lang.Error e) { + // Windows, possibly when IPv6 only... + // https://bugs.openjdk.java.net/browse/JDK-8046500 + // java.lang.Error: IP Helper Library GetIfTable function failed + // at java.net.NetworkInterface.getAll(Native Method) + // at java.net.NetworkInterface.getNetworkInterfaces(Unknown Source) + // at net.i2p.util.Addresses.getAddresses ... + } if (includeLoopbackAndWildcard) { if (haveIPv4) diff --git a/router/java/src/net/i2p/router/transport/udp/MTU.java b/router/java/src/net/i2p/router/transport/udp/MTU.java index c6a2d1a2ea..58d594e0d7 100644 --- a/router/java/src/net/i2p/router/transport/udp/MTU.java +++ b/router/java/src/net/i2p/router/transport/udp/MTU.java @@ -40,6 +40,14 @@ abstract class MTU { ifcs = NetworkInterface.getNetworkInterfaces(); } catch (SocketException se) { return 0; + } catch (java.lang.Error e) { + // Windows, possibly when IPv6 only... + // https://bugs.openjdk.java.net/browse/JDK-8046500 + // java.lang.Error: IP Helper Library GetIfTable function failed + // at java.net.NetworkInterface.getAll(Native Method) + // at java.net.NetworkInterface.getNetworkInterfaces(Unknown Source) + // at net.i2p.util.Addresses.getAddresses ... + return 0; } if (ifcs != null) { while (ifcs.hasMoreElements()) { -- GitLab