summaryrefslogtreecommitdiffstats
path: root/luni
diff options
context:
space:
mode:
authorAlex Klyubin <klyubin@google.com>2014-11-19 20:41:54 +0000
committerAndroid Git Automerger <android-git-automerger@android.com>2014-11-19 20:41:54 +0000
commit18c077b3af24c23633144c27eaaf8d05cf1a01e7 (patch)
treef77245f5c407eb73c9df887409f8a4e4e0385d25 /luni
parentbb3214f878cf048dc21b768dac7b0a02ab063033 (diff)
parent0885520573d05fc656043713326879abf072b803 (diff)
downloadlibcore-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.java2
-rw-r--r--luni/src/test/java/libcore/javax/net/ssl/DefaultHostnameVerifierTest.java3
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() {