diff options
author | naruse <naruse@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2010-10-04 00:33:22 +0000 |
---|---|---|
committer | naruse <naruse@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2010-10-04 00:33:22 +0000 |
commit | 3a633b812e3676d4a1c8f20426d0354be530e056 (patch) | |
tree | 21b121ac7036cf79c3d6b80a2e05343081051d26 | |
parent | eaa4e02d4507ad0658d95403a7a53b78ebb2ed53 (diff) | |
download | ruby-3a633b812e3676d4a1c8f20426d0354be530e056.tar.gz |
* ext/openssl/lib/openssl/bn.rb (Integer#to_bn): OpenSSL::BN.new
accepts only Strings, so call Integer#to_s(16).
16 is for an optimization. [ruby-dev:42336]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29407 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | ext/openssl/lib/openssl/bn.rb | 2 | ||||
-rw-r--r-- | test/openssl/test_bn.rb | 5 |
3 files changed, 12 insertions, 1 deletions
@@ -1,3 +1,9 @@ +Mon Oct 4 09:30:42 2010 NARUSE, Yui <naruse@ruby-lang.org> + + * ext/openssl/lib/openssl/bn.rb (Integer#to_bn): OpenSSL::BN.new + accepts only Strings, so call Integer#to_s(16). + 16 is for an optimization. [ruby-dev:42336] + Mon Oct 4 07:57:51 2010 NARUSE, Yui <naruse@ruby-lang.org> * cont.c (fiber_memsize): Return size. diff --git a/ext/openssl/lib/openssl/bn.rb b/ext/openssl/lib/openssl/bn.rb index e7cbf2cfaf..624c13715c 100644 --- a/ext/openssl/lib/openssl/bn.rb +++ b/ext/openssl/lib/openssl/bn.rb @@ -29,7 +29,7 @@ end # OpenSSL # class Integer def to_bn - OpenSSL::BN::new(self) + OpenSSL::BN::new(self.to_s(16), 16) end end # Integer diff --git a/test/openssl/test_bn.rb b/test/openssl/test_bn.rb index da77a556b0..d913d0c953 100644 --- a/test/openssl/test_bn.rb +++ b/test/openssl/test_bn.rb @@ -8,6 +8,11 @@ require "test/unit" if defined?(OpenSSL) class OpenSSL::TestBN < Test::Unit::TestCase + def test_integer_to_bn + assert_equal(999.to_bn, OpenSSL::BN.new(999.to_s(16), 16)) + assert_equal((2 ** 107 - 1).to_bn, OpenSSL::BN.new((2 ** 107 - 1).to_s(16), 16)) + end + def test_prime_p OpenSSL::BN.new((2 ** 107 - 1).to_s(16), 16).prime? OpenSSL::BN.new((2 ** 127 - 1).to_s(16), 16).prime?(1) |