Пример #1
0
 public function testResetWarning()
 {
     openssl_pkey_get_private('test' . rand(), 'test' . rand());
     restore_error_handler();
     @OpenSslException::reset(0);
     $error = error_get_last();
     $this->assertEquals('The OpenSSL error clearing loop has exceeded 0 rounds.', $error['message']);
 }
Пример #2
0
 /**
  * @see VerifyInterface::verify
  */
 public function verify($signature)
 {
     OpenSslException::reset();
     ob_start();
     $result = openssl_verify($this->getData(), @pack('H*', $signature), $this->getKey());
     $error = trim(ob_get_clean());
     if (-1 === $result) {
         throw OpenSslException::lastError();
     } elseif (!empty($error)) {
         throw new OpenSslException($error);
     }
     return 1 === $result;
 }