/** * @param mixed $value */ public function __construct($value) { // require_once 'Zend/Crypt/Math/BigInteger.php'; $integer = new Zend_Crypt_Math_BigInteger(); $this->_value = $integer->init($value); $this->_type = self::XMLRPC_TYPE_I8; }
/** * @group ZF-6445 */ public function testMarshalBigIntegerFromNative() { $native = (string) (PHP_INT_MAX + 1); $types = array(Zend_XmlRpc_Value::XMLRPC_TYPE_APACHEI8, Zend_XmlRpc_Value::XMLRPC_TYPE_I8); $bigInt = new Zend_Crypt_Math_BigInteger(); $bigInt->init($native); foreach ($types as $type) { $value = Zend_XmlRpc_Value::getXmlRpcValue($native, $type); $this->assertSame('i8', $value->getType()); $this->assertEquals($bigInt, $value->getValue()); } $value = Zend_XmlRpc_Value::getXmlRpcValue($bigInt); $this->assertSame('i8', $value->getType()); $this->assertEquals($bigInt, $value->getValue()); }
/** * In the event a private number/key has not been set by the user, * or generated by ext/openssl, a best attempt will be made to * generate a random key. Having a random number generator installed * on linux/bsd is highly recommended! The alternative is not recommended * for production unless without any other option. * * @return string */ protected function _generatePrivateKey() { $rand = $this->_math->rand($this->getGenerator(), $this->getPrime()); return $rand; }
/** * @param mixed $value */ public function __construct($value) { $integer = new Zend_Crypt_Math_BigInteger(); $this->_value = $integer->init($value); $this->_type = self::XMLRPC_TYPE_I8; }