diff options
author | Alex Klyubin <klyubin@google.com> | 2014-11-19 20:41:54 +0000 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2014-11-19 20:41:54 +0000 |
commit | 18c077b3af24c23633144c27eaaf8d05cf1a01e7 (patch) | |
tree | f77245f5c407eb73c9df887409f8a4e4e0385d25 /luni | |
parent | bb3214f878cf048dc21b768dac7b0a02ab063033 (diff) | |
parent | 0885520573d05fc656043713326879abf072b803 (diff) | |
download | libcore-18c077b3af24c23633144c27eaaf8d05cf1a01e7.tar.gz libcore-18c077b3af24c23633144c27eaaf8d05cf1a01e7.tar.bz2 libcore-18c077b3af24c23633144c27eaaf8d05cf1a01e7.zip |
am 08855205: am 77a7e48a: Fix a bug in DefaultHostnameVerifier wildcard handling.
* commit '0885520573d05fc656043713326879abf072b803':
Fix a bug in DefaultHostnameVerifier wildcard handling.
Diffstat (limited to 'luni')
-rw-r--r-- | luni/src/main/java/javax/net/ssl/DefaultHostnameVerifier.java | 2 | ||||
-rw-r--r-- | luni/src/test/java/libcore/javax/net/ssl/DefaultHostnameVerifierTest.java | 3 |
2 files changed, 4 insertions, 1 deletions
diff --git a/luni/src/main/java/javax/net/ssl/DefaultHostnameVerifier.java b/luni/src/main/java/javax/net/ssl/DefaultHostnameVerifier.java index fa113712c..fd84c3e53 100644 --- a/luni/src/main/java/javax/net/ssl/DefaultHostnameVerifier.java +++ b/luni/src/main/java/javax/net/ssl/DefaultHostnameVerifier.java @@ -137,7 +137,7 @@ public final class DefaultHostnameVerifier implements HostnameVerifier { return hostName.equals(cn); } - if (cn.startsWith("*.") && hostName.regionMatches(0, cn, 2, cn.length() - 2)) { + if (cn.startsWith("*.") && hostName.equals(cn.substring(2))) { return true; // "*.foo.com" matches "foo.com" } diff --git a/luni/src/test/java/libcore/javax/net/ssl/DefaultHostnameVerifierTest.java b/luni/src/test/java/libcore/javax/net/ssl/DefaultHostnameVerifierTest.java index e1c9fe310..feecebe91 100644 --- a/luni/src/test/java/libcore/javax/net/ssl/DefaultHostnameVerifierTest.java +++ b/luni/src/test/java/libcore/javax/net/ssl/DefaultHostnameVerifierTest.java @@ -114,15 +114,18 @@ public final class DefaultHostnameVerifierTest extends TestCase { public void testWildcardMatchesWildcardSuffix() { assertTrue(verifier.verifyHostName("b.c.d", "*.b.c.d")); assertTrue(verifier.verifyHostName("imap.google.com", "*.imap.google.com")); + assertFalse(verifier.verifyHostName("imap.google.com.au", "*.imap.google.com")); } public void testWildcardMatchingSubstring() { assertTrue(verifier.verifyHostName("b.c.d", "b*.c.d")); assertTrue(verifier.verifyHostName("imap.google.com", "ima*.google.com")); + assertFalse(verifier.verifyHostName("imap.google.com.au", "ima*.google.com")); } public void testWildcardMatchingEmptySubstring() { assertTrue(verifier.verifyHostName("imap.google.com", "imap*.google.com")); + assertFalse(verifier.verifyHostName("imap.google.com.au", "imap*.google.com")); } public void testWildcardMatchesChildDomain() { |