From e590373ea71251cfffc8f22f011e2e6335dce716 Mon Sep 17 00:00:00 2001 From: Robert Greenwalt Date: Tue, 22 Feb 2011 16:00:42 -0800 Subject: Start using NetworkUtils.numericToInetAddress. Generates InetAddresses without risking an accidental dns lookup. For use with supposedly numeric-only ip address strings. Change-Id: I694f3976ce1c6382854706f6557ea88a289add3a --- wifi/java/android/net/wifi/WifiConfigStore.java | 12 +++++++----- wifi/java/android/net/wifi/WifiStateMachine.java | 3 ++- 2 files changed, 9 insertions(+), 6 deletions(-) (limited to 'wifi/java') diff --git a/wifi/java/android/net/wifi/WifiConfigStore.java b/wifi/java/android/net/wifi/WifiConfigStore.java index d411715..f6317f5 100644 --- a/wifi/java/android/net/wifi/WifiConfigStore.java +++ b/wifi/java/android/net/wifi/WifiConfigStore.java @@ -686,13 +686,15 @@ class WifiConfigStore { } else if (key.equals(IP_ASSIGNMENT_KEY)) { ipAssignment = IpAssignment.valueOf(in.readUTF()); } else if (key.equals(LINK_ADDRESS_KEY)) { - LinkAddress linkAddr = new LinkAddress(InetAddress.getByName( - in.readUTF()), in.readInt()); + LinkAddress linkAddr = new LinkAddress( + NetworkUtils.numericToInetAddress(in.readUTF()), in.readInt()); linkProperties.addLinkAddress(linkAddr); } else if (key.equals(GATEWAY_KEY)) { - linkProperties.addGateway(InetAddress.getByName(in.readUTF())); + linkProperties.addGateway( + NetworkUtils.numericToInetAddress(in.readUTF())); } else if (key.equals(DNS_KEY)) { - linkProperties.addDns(InetAddress.getByName(in.readUTF())); + linkProperties.addDns( + NetworkUtils.numericToInetAddress(in.readUTF())); } else if (key.equals(PROXY_SETTINGS_KEY)) { proxySettings = ProxySettings.valueOf(in.readUTF()); } else if (key.equals(PROXY_HOST_KEY)) { @@ -706,7 +708,7 @@ class WifiConfigStore { } else { Log.e(TAG, "Ignore unknown key " + key + "while reading"); } - } catch (UnknownHostException e) { + } catch (IllegalArgumentException e) { Log.e(TAG, "Ignore invalid address while reading" + e); } } while (true); diff --git a/wifi/java/android/net/wifi/WifiStateMachine.java b/wifi/java/android/net/wifi/WifiStateMachine.java index fc42ab8..b21f025 100644 --- a/wifi/java/android/net/wifi/WifiStateMachine.java +++ b/wifi/java/android/net/wifi/WifiStateMachine.java @@ -999,7 +999,8 @@ public class WifiStateMachine extends HierarchicalStateMachine { ifcg = service.getInterfaceConfig(intf); if (ifcg != null) { /* IP/netmask: 192.168.43.1/255.255.255.0 */ - ifcg.addr = new LinkAddress(InetAddress.getByName("192.168.43.1"), 24); + ifcg.addr = new LinkAddress(NetworkUtils.numericToInetAddress( + "192.168.43.1"), 24); ifcg.interfaceFlags = "[up]"; service.setInterfaceConfig(intf, ifcg); -- cgit v1.1