From: Mikael Nordfeldth Date: Sun, 18 Aug 2013 17:07:18 +0000 (+0200) Subject: IMPORTANT - fixed Magicsig to properly overload getKV (prev. staticGet) X-Git-Url: https://git.mxchange.org/?a=commitdiff_plain;h=7e4718a4eb8d0e932398d6f150339fa6aec05267;p=quix0rs-gnu-social.git 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) --- 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(