diff options
author | 2016-03-23 14:59:14 -0700 | |
---|---|---|
committer | 2016-03-23 15:28:41 -0700 | |
commit | 7cc736da82b814b383daaa59609372917fd004cd (patch) | |
tree | abe8a3963e9fb282f53562cadd85823d44ad55d3 /tests/NetworkSecurityConfigTest | |
parent | 7c891700995276c9f6952d0e1f2a2c1882d66f3d (diff) |
Properly handle whitespace in domain entries
Domain entries can contain whitespace (or newlines) which should be
ignored to avoid unexpectedly failing to match a domain.
Bug: 27816377
Change-Id: I3691aa4abd409e7be97ad0cf1eb0195725e1b0ab
Diffstat (limited to 'tests/NetworkSecurityConfigTest')
-rw-r--r-- | tests/NetworkSecurityConfigTest/res/xml/domain_whitespace.xml | 11 | ||||
-rw-r--r-- | tests/NetworkSecurityConfigTest/src/android/security/net/config/XmlConfigTests.java | 12 |
2 files changed, 23 insertions, 0 deletions
diff --git a/tests/NetworkSecurityConfigTest/res/xml/domain_whitespace.xml b/tests/NetworkSecurityConfigTest/res/xml/domain_whitespace.xml new file mode 100644 index 000000000000..5d23d36e1dbf --- /dev/null +++ b/tests/NetworkSecurityConfigTest/res/xml/domain_whitespace.xml @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="utf-8"?> +<network-security-config> + <domain-config> + <domain>android.com + </domain> + <domain> developer.android.com </domain> + <pin-set> + <pin digest="SHA-256"> 7HIpactkIAq2Y49orFOOQKurWxmmSFZhBCoQYcRhJ3Y= </pin> + </pin-set> + </domain-config> +</network-security-config> diff --git a/tests/NetworkSecurityConfigTest/src/android/security/net/config/XmlConfigTests.java b/tests/NetworkSecurityConfigTest/src/android/security/net/config/XmlConfigTests.java index 10bcc18a0019..f7066a6f45f6 100644 --- a/tests/NetworkSecurityConfigTest/src/android/security/net/config/XmlConfigTests.java +++ b/tests/NetworkSecurityConfigTest/src/android/security/net/config/XmlConfigTests.java @@ -464,4 +464,16 @@ public class XmlConfigTests extends AndroidTestCase { } catch (RuntimeException expected) { } } + + public void testDomainWhitespaceTrimming() throws Exception { + XmlConfigSource source = + new XmlConfigSource(getContext(), R.xml.domain_whitespace, false); + ApplicationConfig appConfig = new ApplicationConfig(source); + NetworkSecurityConfig defaultConfig = appConfig.getConfigForHostname(""); + MoreAsserts.assertNotEqual(defaultConfig, appConfig.getConfigForHostname("developer.android.com")); + MoreAsserts.assertNotEqual(defaultConfig, appConfig.getConfigForHostname("android.com")); + SSLContext context = TestUtils.getSSLContext(source); + TestUtils.assertConnectionSucceeds(context, "android.com", 443); + TestUtils.assertConnectionSucceeds(context, "developer.android.com", 443); + } } |