]> git.mxchange.org Git - friendica.git/commitdiff
Add probe support to `@user@domain.tld` search string format
authorHypolite Petovan <hypolite@mrpetovan.com>
Tue, 24 Aug 2021 15:32:27 +0000 (11:32 -0400)
committerHypolite Petovan <hypolite@mrpetovan.com>
Tue, 24 Aug 2021 16:46:01 +0000 (12:46 -0400)
mod/follow.php
src/Console/Contact.php
src/Module/Debug/Probe.php

index 075e58d091b18181afe36e389d263672fbebe900..09201bed16cab63f3a143da391c8a85a154b3205 100644 (file)
@@ -60,8 +60,7 @@ function follow_content(App $a)
 
        $uid = local_user();
 
-       // Issue 4815: Silently removing a prefixing @
-       $url = ltrim(Strings::escapeTags(trim($_REQUEST['url'] ?? '')), '@!');
+       $url = Probe::cleanURI(trim($_REQUEST['url'] ?? ''));
 
        // Issue 6874: Allow remote following from Peertube
        if (strpos($url, 'acct:') === 0) {
index ba65c0025176545136733cfd3eff892adbbc170d..9dfcf1392555545137d4b2c8bf91f089661bbbc2 100644 (file)
@@ -25,6 +25,7 @@ use Console_Table;
 use Friendica\App;
 use Friendica\Model\Contact as ContactModel;
 use Friendica\Model\User as UserModel;
+use Friendica\Network\Probe;
 use Friendica\Util\Temporal;
 use RuntimeException;
 use Seld\CliPrompt\CliPrompt;
@@ -153,6 +154,8 @@ HELP;
                        }
                }
 
+               $url = Probe::cleanURI($url);
+
                $contact = ContactModel::getByURLForUser($url, $user['uid']);
                if (!empty($contact)) {
                        throw new RuntimeException('Contact already exists');
index 86aa4afd119fd1afc07266bbfeb0f4bc42b9a784..6c2891c0be6345bdbe95b62d27e639dde1928d71 100644 (file)
@@ -44,6 +44,7 @@ class Probe extends BaseModule
                $res  = '';
 
                if (!empty($addr)) {
+                       $addr = NetworkProbe::cleanURI($addr);
                        $res = NetworkProbe::uri($addr, '', 0);
                        $res = print_r($res, true);
                }