From 641ee1f8a6c81fbf8407cbb7feb93022909cbcdc Mon Sep 17 00:00:00 2001 From: Kay Zumbusch Date: Wed, 9 Mar 2016 21:01:47 +0100 Subject: [PATCH] added check for invalid responses from gethostbynamel fixed indent --- scripts/jobs/cron_tasks.inc.dns.10.bind.php | 23 ++++++++++++--------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/scripts/jobs/cron_tasks.inc.dns.10.bind.php b/scripts/jobs/cron_tasks.inc.dns.10.bind.php index 27ded4d8..a69f0fd5 100644 --- a/scripts/jobs/cron_tasks.inc.dns.10.bind.php +++ b/scripts/jobs/cron_tasks.inc.dns.10.bind.php @@ -35,14 +35,17 @@ class bind { foreach ($nameservers as $nameserver) { // DNS servers might be multi homed; allow transfer from all ip // addresses of the DNS server - $nameserver_ips = gethostbynamel(trim($nameserver)); - if (substr($nameserver, -1, 1) != '.') { - $nameserver.= '.'; + $nameserver_ips = gethostbynamel(trim($nameserver)); + // ignore invalid responses + if (is_array($nameserver_ips)) { + if (substr($nameserver, -1, 1) != '.') { + $nameserver.= '.'; + } + $this->nameservers[] = array( + 'hostname' => trim($nameserver), + 'ips' => $nameserver_ips + ); } - $this->nameservers[] = array( - 'hostname' => trim($nameserver), - 'ips' => $nameserver_ips - ); } } @@ -235,9 +238,9 @@ class bind { // put nameservers in allow-transfer if (count($this->nameservers) > 0) { foreach ($this->nameservers as $ns) { - foreach($ns["ips"] as $ip) { - $bindconf_file.= ' ' . $ip . ";\n"; - } + foreach($ns["ips"] as $ip) { + $bindconf_file.= ' ' . $ip . ";\n"; + } } } // AXFR server #100