diff options
author | Brad Fitzpatrick <bradfitz@android.com> | 2010-10-10 11:15:27 -0700 |
---|---|---|
committer | Android Code Review <code-review@android.com> | 2010-10-10 11:15:27 -0700 |
commit | 3ed792d59cda9f9023201d80f5bdc62d4cef3090 (patch) | |
tree | 408bbda976bb66461fc1723e9b5972179e9705d8 | |
parent | 38f534882eb9214b4c1a8035990157f941762f85 (diff) | |
parent | e6b29898b12a3547c24d23e41438bcefd49b56e9 (diff) | |
download | frameworks_base-3ed792d59cda9f9023201d80f5bdc62d4cef3090.zip frameworks_base-3ed792d59cda9f9023201d80f5bdc62d4cef3090.tar.gz frameworks_base-3ed792d59cda9f9023201d80f5bdc62d4cef3090.tar.bz2 |
Merge "Don't perform DNS lookup in android.net.Proxy.isLocalHost"
-rw-r--r-- | core/java/android/net/Proxy.java | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/core/java/android/net/Proxy.java b/core/java/android/net/Proxy.java index 22c30a5..c1fa5b4 100644 --- a/core/java/android/net/Proxy.java +++ b/core/java/android/net/Proxy.java @@ -24,9 +24,7 @@ import android.os.SystemProperties; import android.provider.Settings; import android.util.Log; -import java.net.InetAddress; import java.net.URI; -import java.net.UnknownHostException; import junit.framework.Assert; @@ -162,15 +160,15 @@ final public class Proxy { final URI uri = URI.create(url); final String host = uri.getHost(); if (host != null) { - if (host.equalsIgnoreCase("localhost")) { - return true; - } - if (InetAddress.getByName(host).isLoopbackAddress()) { + // TODO: InetAddress.isLoopbackAddress should be used to check + // for localhost. However no public factory methods exist which + // can be used without triggering DNS lookup if host is not localhost. + if (host.equalsIgnoreCase("localhost") || + host.equals("127.0.0.1") || + host.equals("[::1]")) { return true; } } - } catch (UnknownHostException uex) { - // Ignore (INetworkSystem.ipStringToByteArray) } catch (IllegalArgumentException iex) { // Ignore (URI.create) } |