mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
* ext/openssl/ossl_pkey_ec.c: Ensure compatibility to builds of
OpenSSL with OPENSSL_NO_EC2M defined, but OPENSSL_NO_EC not defined. * test/openssl/test_pkey_ec.rb: Iterate over built-in curves (and assert their non-emptiness!) instead of hard-coding them, as this may cause problems with respect to the different availability of individual curves in individual OpenSSL builds. [ruby-core:54881] [Bug #8384] Thanks to Vit Ondruch for providing the patch! git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41808 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
880bc0e02d
commit
0d58bb5598
3 changed files with 30 additions and 13 deletions
|
@ -7,28 +7,28 @@ class OpenSSL::TestEC < Test::Unit::TestCase
|
|||
@data1 = 'foo'
|
||||
@data2 = 'bar' * 1000 # data too long for DSA sig
|
||||
|
||||
@group1 = OpenSSL::PKey::EC::Group.new('secp112r1')
|
||||
@group2 = OpenSSL::PKey::EC::Group.new('sect163k1')
|
||||
@group3 = OpenSSL::PKey::EC::Group.new('prime256v1')
|
||||
@groups = []
|
||||
@keys = []
|
||||
|
||||
@key1 = OpenSSL::PKey::EC.new
|
||||
@key1.group = @group1
|
||||
@key1.generate_key
|
||||
OpenSSL::PKey::EC.builtin_curves.each do |curve, comment|
|
||||
group = OpenSSL::PKey::EC::Group.new(curve)
|
||||
|
||||
@key2 = OpenSSL::PKey::EC.new(@group2.curve_name)
|
||||
@key2.generate_key
|
||||
key = OpenSSL::PKey::EC.new(group)
|
||||
key.generate_key
|
||||
|
||||
@key3 = OpenSSL::PKey::EC.new(@group3)
|
||||
@key3.generate_key
|
||||
|
||||
@groups = [@group1, @group2, @group3]
|
||||
@keys = [@key1, @key2, @key3]
|
||||
@groups << group
|
||||
@keys << key
|
||||
end
|
||||
end
|
||||
|
||||
def compare_keys(k1, k2)
|
||||
assert_equal(k1.to_pem, k2.to_pem)
|
||||
end
|
||||
|
||||
def test_builtin_curves
|
||||
assert(!OpenSSL::PKey::EC.builtin_curves.empty?)
|
||||
end
|
||||
|
||||
def test_curve_names
|
||||
@groups.each_with_index do |group, idx|
|
||||
key = @keys[idx]
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue