diff options
author | Lukas Reschke <lukas@owncloud.com> | 2016-03-10 22:32:29 +0100 |
---|---|---|
committer | Lukas Reschke <lukas@owncloud.com> | 2016-03-10 22:32:29 +0100 |
commit | dc6789fd5bf4ef537a543fcafc90070265a8ee7c (patch) | |
tree | 0b7e4aaf938a351ecb8903219ba82fcd5b33512c /lib | |
parent | b502667f3a5e6f08fb2fefbac56134d074859c09 (diff) | |
download | nextcloud-server-dc6789fd5bf4ef537a543fcafc90070265a8ee7c.tar.gz nextcloud-server-dc6789fd5bf4ef537a543fcafc90070265a8ee7c.zip |
Explicitly check for port
The setup uses `\OCP\IRequest::getInsecureServerHost` which in some cases can also include a port. This makes the trusted domain check fail thus.
I've decided to add this here that way because adjusting the setup would require parsing the host properly. This is not something that can be done very good in PHP. Check the following example for why `parse_url` is not our friend: https://3v4l.org/k501Z
Diffstat (limited to 'lib')
-rw-r--r-- | lib/private/security/trusteddomainhelper.php | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/lib/private/security/trusteddomainhelper.php b/lib/private/security/trusteddomainhelper.php index 885ceee23c3..409628677a7 100644 --- a/lib/private/security/trusteddomainhelper.php +++ b/lib/private/security/trusteddomainhelper.php @@ -78,6 +78,12 @@ class TrustedDomainHelper { if (preg_match(Request::REGEX_LOCALHOST, $domain) === 1) { return true; } + + // Compare with port appended + if(in_array($domainWithPort, $trustedList, true)) { + return true; + } + return in_array($domain, $trustedList, true); } |