summaryrefslogtreecommitdiffstats
path: root/luni
diff options
context:
space:
mode:
authorAlex Klyubin <klyubin@google.com>2014-11-19 20:37:03 +0000
committerAndroid Git Automerger <android-git-automerger@android.com>2014-11-19 20:37:03 +0000
commit0885520573d05fc656043713326879abf072b803 (patch)
treee7b9c3cd8dc1030473a878bb7f4dadac970a96cc /luni
parent2164d895f9ae077ce2d53ccdcc213c3483f3b9bd (diff)
parent77a7e48ac80c5bb9ac4d9b6bfdecf31d46b09fd1 (diff)
downloadlibcore-0885520573d05fc656043713326879abf072b803.tar.gz
libcore-0885520573d05fc656043713326879abf072b803.tar.bz2
libcore-0885520573d05fc656043713326879abf072b803.zip
am 77a7e48a: Fix a bug in DefaultHostnameVerifier wildcard handling.
* commit '77a7e48ac80c5bb9ac4d9b6bfdecf31d46b09fd1': 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() {