Index: net/android/java/src/org/chromium/net/AndroidNetworkLibrary.java |
diff --git a/net/android/java/src/org/chromium/net/AndroidNetworkLibrary.java b/net/android/java/src/org/chromium/net/AndroidNetworkLibrary.java |
index 95752cca8b26a172f89ccd1d0b5b424261b9c8e6..49b66345c7a355da6cbba811cac3b9a34109aa1d 100644 |
--- a/net/android/java/src/org/chromium/net/AndroidNetworkLibrary.java |
+++ b/net/android/java/src/org/chromium/net/AndroidNetworkLibrary.java |
@@ -17,6 +17,7 @@ import org.chromium.net.CertificateMimeType; |
import java.net.Inet6Address; |
import java.net.InetAddress; |
+import java.net.InterfaceAddress; |
import java.net.NetworkInterface; |
import java.net.SocketException; |
import java.net.URLConnection; |
@@ -24,6 +25,7 @@ import java.security.KeyStoreException; |
import java.security.NoSuchAlgorithmException; |
import java.security.cert.CertificateException; |
import java.util.Enumeration; |
+import java.util.List; |
/** |
* This class implements net utilities required by the net component. |
@@ -165,24 +167,25 @@ class AndroidNetworkLibrary { |
// Skip loopback interfaces, and ones which are down. |
if (!netIf.isUp() || netIf.isLoopback()) |
continue; |
- Enumeration<InetAddress> addressList = netIf.getInetAddresses(); |
- while (addressList.hasMoreElements()) { |
- InetAddress address = addressList.nextElement(); |
+ for (InterfaceAddress interfaceAddress : netIf.getInterfaceAddresses()) { |
+ InetAddress address = interfaceAddress.getAddress(); |
// Skip loopback addresses configured on non-loopback interfaces. |
if (address.isLoopbackAddress()) |
continue; |
StringBuilder addressString = new StringBuilder(); |
addressString.append(netIf.getName()); |
- addressString.append(","); |
+ addressString.append("\t"); |
String ipAddress = address.getHostAddress(); |
if (address instanceof Inet6Address && ipAddress.contains("%")) { |
ipAddress = ipAddress.substring(0, ipAddress.lastIndexOf("%")); |
} |
addressString.append(ipAddress); |
+ addressString.append("/"); |
+ addressString.append(interfaceAddress.getNetworkPrefixLength()); |
if (result.length() != 0) |
- result.append(";"); |
+ result.append("\n"); |
result.append(addressString.toString()); |
} |
} catch (SocketException e) { |