summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRoeland Jago Douma <rullzer@users.noreply.github.com>2019-10-08 08:51:11 +0200
committerGitHub <noreply@github.com>2019-10-08 08:51:11 +0200
commit075a0b24d53dfa4fed0c0c20925cfeeefc622962 (patch)
treefbc34f4a4b6efbe133bd4f4585dc89e744d53b4d
parentf2d44b87bb3edaa502ea008a10c8f845b108e729 (diff)
parent2df8d646c1c1375a1758ea3a16551643e4b1e92f (diff)
downloadnextcloud-server-075a0b24d53dfa4fed0c0c20925cfeeefc622962.tar.gz
nextcloud-server-075a0b24d53dfa4fed0c0c20925cfeeefc622962.zip
Merge pull request #17431 from johkoenig/bugfix/17377/trusted_domain_helper_case_insensitive
make TrustedDomainHelper case insensitive
-rw-r--r--lib/private/Security/TrustedDomainHelper.php2
-rw-r--r--tests/lib/Security/TrustedDomainHelperTest.php5
2 files changed, 6 insertions, 1 deletions
diff --git a/lib/private/Security/TrustedDomainHelper.php b/lib/private/Security/TrustedDomainHelper.php
index 5237767d8ea..22a75158294 100644
--- a/lib/private/Security/TrustedDomainHelper.php
+++ b/lib/private/Security/TrustedDomainHelper.php
@@ -90,7 +90,7 @@ class TrustedDomainHelper {
if (gettype($trusted) !== 'string') {
break;
}
- $regex = '/^' . implode('[-\.a-zA-Z0-9]*', array_map(function($v) { return preg_quote($v, '/'); }, explode('*', $trusted))) . '$/';
+ $regex = '/^' . implode('[-\.a-zA-Z0-9]*', array_map(function($v) { return preg_quote($v, '/'); }, explode('*', $trusted))) . '$/i';
if (preg_match($regex, $domain) || preg_match($regex, $domainWithPort)) {
return true;
}
diff --git a/tests/lib/Security/TrustedDomainHelperTest.php b/tests/lib/Security/TrustedDomainHelperTest.php
index 25586a1bc27..86420e22c21 100644
--- a/tests/lib/Security/TrustedDomainHelperTest.php
+++ b/tests/lib/Security/TrustedDomainHelperTest.php
@@ -54,6 +54,8 @@ class TrustedDomainHelperTest extends \Test\TestCase {
'cen*ter',
'*.leadingwith.port:123',
'trailingwith.port*:456',
+ 'UPPERCASE.DOMAIN',
+ 'lowercase.domain',
];
return [
// empty defaults to false with 8.1
@@ -106,6 +108,9 @@ class TrustedDomainHelperTest extends \Test\TestCase {
[$trustedHostTestList, '-bad', false],
[$trustedHostTestList, '-bad.leading.host', false],
[$trustedHostTestList, 'bad..der.leading.host', false],
+ // case sensitivity
+ [$trustedHostTestList, 'uppercase.domain', true],
+ [$trustedHostTestList, 'LOWERCASE.DOMAIN', true],
];
}
}