]> git.mxchange.org Git - friendica.git/blobdiff - src/Protocol/Salmon.php
update FR translations THX kalon33
[friendica.git] / src / Protocol / Salmon.php
index aecc35e9f9372f34159f7899a320c87c05dc0a55..98af26c15c3130b01e5a21aaca82565953b415a9 100644 (file)
@@ -23,6 +23,7 @@ namespace Friendica\Protocol;
 
 use Friendica\Core\Logger;
 use Friendica\DI;
+use Friendica\Network\HTTPClient\Client\HttpClientAccept;
 use Friendica\Network\Probe;
 use Friendica\Util\Crypto;
 use Friendica\Util\Strings;
@@ -42,7 +43,7 @@ class Salmon
         * @return mixed
         * @throws \Friendica\Network\HTTPException\InternalServerErrorException
         */
-       public static function getKey($uri, $keyhash)
+       public static function getKey(string $uri, string $keyhash)
        {
                $ret = [];
 
@@ -72,7 +73,8 @@ class Salmon
                                                $ret[$x] = substr($ret[$x], 5);
                                        }
                                } elseif (Strings::normaliseLink($ret[$x]) == 'http://') {
-                                       $ret[$x] = DI::httpClient()->fetch($ret[$x]);
+                                       $ret[$x] = DI::httpClient()->fetch($ret[$x], HttpClientAccept::MAGIC_KEY);
+                                       Logger::debug('Fetched public key', ['url' => $ret[$x]]);
                                }
                        }
                }
@@ -107,18 +109,18 @@ class Salmon
         * @return integer
         * @throws \Friendica\Network\HTTPException\InternalServerErrorException
         */
-       public static function slapper($owner, $url, $slap)
+       public static function slapper(array $owner, string $url, string $slap): int
        {
                // does contact have a salmon endpoint?
 
                if (!strlen($url)) {
-                       return;
+                       return -1;
                }
 
                if (!$owner['sprvkey']) {
                        Logger::notice(sprintf("user '%s' (%d) does not have a salmon private key. Send failed.",
                        $owner['name'], $owner['uid']));
-                       return;
+                       return -1;
                }
 
                Logger::info('slapper called for '.$url.'. Data: ' . $slap);
@@ -227,7 +229,7 @@ class Salmon
         * @return string
         * @throws \Exception
         */
-       public static function salmonKey($pubkey)
+       public static function salmonKey(string $pubkey): string
        {
                Crypto::pemToMe($pubkey, $modulus, $exponent);
                return 'RSA' . '.' . Strings::base64UrlEncode($modulus, true) . '.' . Strings::base64UrlEncode($exponent, true);