aboutsummaryrefslogtreecommitdiffstats
path: root/lib/private/Security
diff options
context:
space:
mode:
authorVincent Petry <vincent@nextcloud.com>2021-11-22 14:01:41 +0100
committerVincent Petry <vincent@nextcloud.com>2021-11-22 14:10:11 +0100
commit7e08a4ab157b2be82c286c65ae18fa9199aeba80 (patch)
treef7e90267f2c2462f5b9b956568b3d51c9d3fbf9e /lib/private/Security
parent68fecc1d9f6810e815c6a6ba80d4c13a0bde98b8 (diff)
downloadnextcloud-server-7e08a4ab157b2be82c286c65ae18fa9199aeba80.tar.gz
nextcloud-server-7e08a4ab157b2be82c286c65ae18fa9199aeba80.zip
Fix getting subnet of ipv4 mapped ipv6 addresses
Signed-off-by: Vincent Petry <vincent@nextcloud.com>
Diffstat (limited to 'lib/private/Security')
-rw-r--r--lib/private/Security/Normalizer/IpAddress.php2
1 files changed, 2 insertions, 0 deletions
diff --git a/lib/private/Security/Normalizer/IpAddress.php b/lib/private/Security/Normalizer/IpAddress.php
index 705235413e4..656487d8ce4 100644
--- a/lib/private/Security/Normalizer/IpAddress.php
+++ b/lib/private/Security/Normalizer/IpAddress.php
@@ -103,6 +103,8 @@ class IpAddress {
$this->ip,
32
);
+ } elseif (substr(strtolower($this->ip), 0, 7) === '::ffff:') {
+ return '::ffff:' . $this->getIPv4Subnet(substr($this->ip, 7), 32);
}
return $this->getIPv6Subnet(
$this->ip,