From 7e4718a4eb8d0e932398d6f150339fa6aec05267 Mon Sep 17 00:00:00 2001 From: Mikael Nordfeldth Date: Sun, 18 Aug 2013 19:07:18 +0200 Subject: [PATCH] IMPORTANT - fixed Magicsig to properly overload getKV (prev. staticGet) In commit e95f77d34c501d345e731ccf6bc722034d155b77 Magicsig lost the 'staticGet' function (later renamed to getKV in 2a4dc77a633cc78907934fd93200ac16d55be78e ), which was important to properly initialize the Magicsig object (fromString) --- plugins/OStatus/classes/Magicsig.php | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/plugins/OStatus/classes/Magicsig.php b/plugins/OStatus/classes/Magicsig.php index 4a703ae3b7..9c7ac62d72 100644 --- a/plugins/OStatus/classes/Magicsig.php +++ b/plugins/OStatus/classes/Magicsig.php @@ -81,6 +81,31 @@ class Magicsig extends Managed_DataObject $this->alg = $alg; } + /** + * Fetch a Magicsig object from the cache or database on a field match. + * + * @param string $k + * @param mixed $v + * @return Magicsig + */ + static function getKV($k, $v=null) + { + $obj = parent::getKV($k, $v); + if (!empty($obj)) { + $obj = Magicsig::fromString($obj->keypair); + + // Double check keys: Crypt_RSA did not + // consistently generate good keypairs. + // We've also moved to 1024 bit keys. + if (strlen($obj->publicKey->modulus->toBits()) != 1024) { + $obj->delete(); + return false; + } + } + + return $obj; + } + public static function schemaDef() { return array( -- 2.39.5