1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00

* Backported the fix at

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]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@30275 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
nahi 2010-12-20 15:21:52 +00:00
parent f79d54eadb
commit cb0ea9ddfd
3 changed files with 22 additions and 1 deletions

View file

@ -1,3 +1,12 @@
Tue Dec 21 00:19:50 2010 NAKAMURA, Hiroshi <nahi@ruby-lang.org>
* Backported the fix at
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]
Sat Dec 11 05:48:28 2010 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp>
* ext/tk/lib/multi-tk.rb: infinite loop on method_missing at loading

View file

@ -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

12
test/openssl/test_bn.rb Normal file
View file

@ -0,0 +1,12 @@
require_relative 'utils'
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
end
end