diff --git a/core/java/src/net/i2p/util/Addresses.java b/core/java/src/net/i2p/util/Addresses.java index 97e19cf5411b33f7041033428925e4580f9500a3..0bf7df7056c11089111de4b4f79f9ef60c2ad4fd 100644 --- a/core/java/src/net/i2p/util/Addresses.java +++ b/core/java/src/net/i2p/util/Addresses.java @@ -75,16 +75,19 @@ public abstract class Addresses { } catch (UnknownHostException e) {} try { - for(Enumeration<NetworkInterface> ifcs = NetworkInterface.getNetworkInterfaces(); ifcs.hasMoreElements();) { - NetworkInterface ifc = ifcs.nextElement(); - for(Enumeration<InetAddress> addrs = ifc.getInetAddresses(); addrs.hasMoreElements();) { - InetAddress addr = addrs.nextElement(); - if (addr instanceof Inet4Address) - haveIPv4 = true; - else - haveIPv6 = true; - if (shouldInclude(addr, includeLocal, includeIPv6)) - rv.add(addr.getHostAddress()); + Enumeration<NetworkInterface> ifcs = NetworkInterface.getNetworkInterfaces(); + if (ifcs != null) { + while (ifcs.hasMoreElements()) { + NetworkInterface ifc = ifcs.nextElement(); + for(Enumeration<InetAddress> addrs = ifc.getInetAddresses(); addrs.hasMoreElements();) { + InetAddress addr = addrs.nextElement(); + if (addr instanceof Inet4Address) + haveIPv4 = true; + else + haveIPv6 = true; + if (shouldInclude(addr, includeLocal, includeIPv6)) + rv.add(addr.getHostAddress()); + } } } } catch (SocketException e) {}