diff options
author | Daniel Kesselberg <mail@danielkesselberg.de> | 2023-09-12 11:17:37 +0200 |
---|---|---|
committer | Daniel Kesselberg <mail@danielkesselberg.de> | 2023-09-12 14:04:23 +0200 |
commit | f8f985602b65fd5d4f1bf04939ae873c8d55b0a6 (patch) | |
tree | bc9ff8e1fc5fd68d0e4655f60357530b771509ef /lib/private/Http | |
parent | 7dfeaa6901b750a85cd096539a4239b61abd4437 (diff) | |
download | nextcloud-server-f8f985602b65fd5d4f1bf04939ae873c8d55b0a6.tar.gz nextcloud-server-f8f985602b65fd5d4f1bf04939ae873c8d55b0a6.zip |
test: add tests for dns pin middleware
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
Diffstat (limited to 'lib/private/Http')
-rw-r--r-- | lib/private/Http/Client/DnsPinMiddleware.php | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/lib/private/Http/Client/DnsPinMiddleware.php b/lib/private/Http/Client/DnsPinMiddleware.php index 5bde20d5cc1..aecccc6ce97 100644 --- a/lib/private/Http/Client/DnsPinMiddleware.php +++ b/lib/private/Http/Client/DnsPinMiddleware.php @@ -55,7 +55,7 @@ class DnsPinMiddleware { $second = array_pop($labels); $hostname = $second . '.' . $top; - $responses = dns_get_record($hostname, DNS_SOA); + $responses = $this->dnsGetRecord($hostname, DNS_SOA); if ($responses === false || count($responses) === 0) { return null; @@ -81,7 +81,7 @@ class DnsPinMiddleware { continue; } - $dnsResponses = dns_get_record($target, $dnsType); + $dnsResponses = $this->dnsGetRecord($target, $dnsType); $canHaveCnameRecord = true; if ($dnsResponses !== false && count($dnsResponses) > 0) { foreach ($dnsResponses as $dnsResponse) { @@ -104,6 +104,13 @@ class DnsPinMiddleware { return $targetIps; } + /** + * Wrapper for dns_get_record + */ + protected function dnsGetRecord(string $hostname, int $type): array|false { + return \dns_get_record($hostname, $type); + } + public function addDnsPinning() { return function (callable $handler) { return function ( |