]> git.mxchange.org Git - friendica.git/commitdiff
Don't create contacts for unknown networks / improved content fetching
authorMichael <heluecht@pirati.ca>
Sat, 28 Dec 2019 19:17:48 +0000 (19:17 +0000)
committerMichael <heluecht@pirati.ca>
Sat, 28 Dec 2019 19:17:48 +0000 (19:17 +0000)
src/Model/Contact.php
src/Network/Probe.php

index 6c0436eea2b84845b46a311630f998f08a181fe2..1fd8426acd03bf15901e251d84204cc07a57b481 100644 (file)
@@ -1514,7 +1514,7 @@ class Contact extends BaseObject
                        $data = array_merge($data, $default);
                }
 
-               if (empty($data)) {
+               if (empty($data) || ($data['network'] == Protocol::PHANTOM)) {
                        return 0;
                }
 
index 02a755eec6826b1e43ef6b2a10209df918d0b967..878198504d46d0921c1ec3fef96016d171fd0f02 100644 (file)
@@ -119,12 +119,16 @@ class Probe
                        $xml = $curlResult->getBody();
                        $xrd = XML::parseString($xml, false);
                        $host_url = 'https://'.$host;
+               } elseif ($curlResult->isTimeout()) {
+                       Logger::info('Probing timeout', ['url' => $ssl_url], Logger::DEBUG);
+                       self::$istimeout = true;
+                       return false;
                }
 
                if (!is_object($xrd)) {
                        $curlResult = Network::curl($url, false, ['timeout' => $xrd_timeout, 'accept_content' => 'application/xrd+xml']);
                        if ($curlResult->isTimeout()) {
-                               Logger::log("Probing timeout for " . $url, Logger::DEBUG);
+                               Logger::info('Probing timeout', ['url' => $url], Logger::DEBUG);
                                self::$istimeout = true;
                                return false;
                        }
@@ -1520,8 +1524,13 @@ class Probe
         */
        private static function pumpioProfileData($profile_link)
        {
+               $curlResult = Network::curl($profile_link);
+               if (!$curlResult->isSuccess()) {
+                       return false;
+               }
+
                $doc = new DOMDocument();
-               if (!@$doc->loadHTMLFile($profile_link)) {
+               if (!@$doc->loadHTML($curlResult->getBody())) {
                        return false;
                }
 
@@ -1693,9 +1702,13 @@ class Probe
         */
        private static function getFeedLink($url)
        {
-               $doc = new DOMDocument();
+               $curlResult = Network::curl($url);
+               if (!$curlResult->isSuccess()) {
+                       return false;
+               }
 
-               if (!@$doc->loadHTMLFile($url)) {
+               $doc = new DOMDocument();
+               if (!@$doc->loadHTML($curlResult->getBody())) {
                        return false;
                }