aboutsummaryrefslogtreecommitdiffstats
path: root/lib/private/Http
diff options
context:
space:
mode:
authorDaniel Kesselberg <mail@danielkesselberg.de>2023-09-12 11:17:37 +0200
committerDaniel Kesselberg <mail@danielkesselberg.de>2023-09-12 14:04:23 +0200
commitf8f985602b65fd5d4f1bf04939ae873c8d55b0a6 (patch)
treebc9ff8e1fc5fd68d0e4655f60357530b771509ef /lib/private/Http
parent7dfeaa6901b750a85cd096539a4239b61abd4437 (diff)
downloadnextcloud-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.php11
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 (