From 2c8c803d6487c0ed2d00f148eb4c9ad6fa564aef Mon Sep 17 00:00:00 2001 From: Michael Vogel Date: Thu, 2 Aug 2018 19:07:20 +0200 Subject: [PATCH] Avid notices and warnings (#5546) --- src/Protocol/PortableContact.php | 16 +++++++++++++--- src/Util/Network.php | 5 +++-- 2 files changed, 16 insertions(+), 5 deletions(-) diff --git a/src/Protocol/PortableContact.php b/src/Protocol/PortableContact.php index aa86a0002a..172991cd3b 100644 --- a/src/Protocol/PortableContact.php +++ b/src/Protocol/PortableContact.php @@ -1645,7 +1645,9 @@ class PortableContact if ($retdata["success"] && !empty($retdata["body"])) { $data = json_decode($retdata["body"], true); - self::discoverServer($data, 2); + if (!empty($data)) { + self::discoverServer($data, 2); + } if (Config::get('system', 'poco_discovery') > 1) { $timeframe = Config::get('system', 'poco_discovery_since'); @@ -1665,7 +1667,11 @@ class PortableContact if ($retdata["success"] && !empty($retdata["body"])) { logger("Fetch all global contacts from the server " . $server["nurl"], LOGGER_DEBUG); - $success = self::discoverServer(json_decode($retdata["body"], true)); + $data = json_decode($retdata["body"], true); + + if (!empty($data)) { + $success = self::discoverServer($data); + } } if (!$success && (Config::get('system', 'poco_discovery') > 2)) { @@ -1760,7 +1766,11 @@ class PortableContact $retdata = Network::curl($url); if (!empty($retdata['success'])) { - self::discoverServer(json_decode($retdata['body'], true), 3); + $data = json_decode($retdata["body"], true); + + if (!empty($data)) { + self::discoverServer($data, 3); + } } } } diff --git a/src/Util/Network.php b/src/Util/Network.php index e9e318aa08..e3b640fa77 100644 --- a/src/Util/Network.php +++ b/src/Util/Network.php @@ -494,10 +494,11 @@ class Network $h = substr($addr, strpos($addr, '@') + 1); - if (($h) && (dns_get_record($h, DNS_A + DNS_MX) || filter_var($h, FILTER_VALIDATE_IP) )) { + // Concerning the @ see here: https://stackoverflow.com/questions/36280957/dns-get-record-a-temporary-server-error-occurred + if ($h && (@dns_get_record($h, DNS_A + DNS_MX) || filter_var($h, FILTER_VALIDATE_IP) )) { return true; } - if (($h) && dns_get_record($h, DNS_CNAME + DNS_MX)) { + if ($h && @dns_get_record($h, DNS_CNAME + DNS_MX)) { return true; } return false;