From b3f82f0981bd4fd94763b86e20f53f637ef7d92b Mon Sep 17 00:00:00 2001 From: Michael Kaufmann Date: Sun, 1 Nov 2020 21:00:27 +0100 Subject: [PATCH] remove duplicate AXFR records as nameserver get added automatically in case they have also been added to the axfr list Signed-off-by: Michael Kaufmann --- lib/Froxlor/Cron/Dns/DnsBase.php | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/lib/Froxlor/Cron/Dns/DnsBase.php b/lib/Froxlor/Cron/Dns/DnsBase.php index c68631da..fa7bbe76 100644 --- a/lib/Froxlor/Cron/Dns/DnsBase.php +++ b/lib/Froxlor/Cron/Dns/DnsBase.php @@ -41,6 +41,7 @@ abstract class DnsBase { $this->logger = $logger; + $known_ns_ips = []; if (Settings::Get('system.nameservers') != '') { $nameservers = explode(',', Settings::Get('system.nameservers')); foreach ($nameservers as $nameserver) { @@ -58,6 +59,8 @@ abstract class DnsBase $nameserver_ips = array( $nameserver ); + } else { + $known_ns_ips = array_merge($known_ns_ips, $nameserver_ips); } $this->ns[] = array( 'hostname' => $nameserver, @@ -80,7 +83,9 @@ abstract class DnsBase if (Settings::Get('system.axfrservers') != '') { $axfrservers = explode(',', Settings::Get('system.axfrservers')); foreach ($axfrservers as $axfrserver) { - $this->axfr[] = trim($axfrserver); + if (!in_array(trim($axfrserver), $known_ns_ips)) { + $this->axfr[] = trim($axfrserver); + } } } }