From: Michael Date: Mon, 27 Jul 2020 19:36:11 +0000 (+0000) Subject: Selective probing for AP X-Git-Url: https://git.mxchange.org/?a=commitdiff_plain;h=477e9bd67a0d88b959af363739ab3f8469852f46;p=friendica.git Selective probing for AP --- diff --git a/src/Model/ContactRelation.php b/src/Model/ContactRelation.php index 06c25059fa..bc4a38b744 100644 --- a/src/Model/ContactRelation.php +++ b/src/Model/ContactRelation.php @@ -22,6 +22,7 @@ namespace Friendica\Model; use Friendica\Core\Logger; +use Friendica\Core\Protocol; use Friendica\Database\DBA; use Friendica\DI; use Friendica\Protocol\ActivityPub; @@ -100,7 +101,13 @@ class ContactRelation return; } - $apcontact = APContact::getByURL($url); + if (in_array($contact['network'], [Protocol::ACTIVITYPUB, Protocol::DFRN])) { + // The contact is (most likely) speaking AP, so updating is allowed + $apcontact = APContact::getByURL($url); + } else { + // The contact isn't obviously speaking AP, so we don't allow updating + $apcontact = APContact::getByURL($url, false); + } if (!empty($apcontact['followers']) && is_string($apcontact['followers'])) { $followers = ActivityPub::fetchItems($apcontact['followers']);