From 3d47d055b304de38da732ee9895933580ed98bd6 Mon Sep 17 00:00:00 2001 From: Kazuki Yamaguchi Date: Fri, 3 Jun 2016 20:24:13 +0900 Subject: openssl: adjust tests for changes in OpenSSL * test/openssl/test_x509name.rb: Don't register OID for 'emailAddress' and 'serialNumber'. A recent change in OpenSSL made OBJ_create() reject an already existing OID. They were necessary to run tests with OpenSSL 0.9.6 which is now unsupported. https://git.openssl.org/gitweb/?p=openssl.git;a=commit;h=52832e470f5fe8c222249ae5b539aeb3c74cdb25 [ruby-core:75225] [Feature #12324] * test/openssl/test_ssl_session.rb (test_server_session): Duplicate SSL::Session before re-adding to the SSL context's session store with SSL::SSLContext#session_add. https://git.openssl.org/gitweb/?p=openssl.git;a=commit;h=7c2d4fee2547650102cd16d23f8125b76112ae75 * test/openssl/test_pkey_ec.rb (setup): Remove X25519 from @keys. X25519 is for key agreement and not suitable for signing. --- test/openssl/test_pkey_ec.rb | 4 +++- test/openssl/test_ssl_session.rb | 8 ++++---- test/openssl/test_x509name.rb | 5 ----- 3 files changed, 7 insertions(+), 10 deletions(-) (limited to 'test') diff --git a/test/openssl/test_pkey_ec.rb b/test/openssl/test_pkey_ec.rb index 4161e9b0e0..ffaabafe80 100644 --- a/test/openssl/test_pkey_ec.rb +++ b/test/openssl/test_pkey_ec.rb @@ -12,7 +12,9 @@ class OpenSSL::TestEC < OpenSSL::TestCase @keys = [] OpenSSL::PKey::EC.builtin_curves.each do |curve, comment| - next if curve.start_with?("Oakley") # Oakley curves are not suitable for ECDSA + # These curves are exceptional + next if ["Oakley", "X25519"].any? { |n| curve.start_with?(n) } + group = OpenSSL::PKey::EC::Group.new(curve) key = OpenSSL::PKey::EC.new(group) diff --git a/test/openssl/test_ssl_session.rb b/test/openssl/test_ssl_session.rb index cdcab02f95..84686f6b4f 100644 --- a/test/openssl/test_ssl_session.rb +++ b/test/openssl/test_ssl_session.rb @@ -211,25 +211,25 @@ __EOS__ assert_equal(stats[:cache_misses], 0) assert(ssl.session_reused?) ctx.session_remove(session) - saved_session = session + saved_session = session.to_der when 2 assert_equal(stats[:cache_num], 1) assert_equal(stats[:cache_hits], 1) assert_equal(stats[:cache_misses], 1) assert(!ssl.session_reused?) - ctx.session_add(saved_session) + ctx.session_add(OpenSSL::SSL::Session.new(saved_session)) when 3 assert_equal(stats[:cache_num], 2) assert_equal(stats[:cache_hits], 2) assert_equal(stats[:cache_misses], 1) assert(ssl.session_reused?) - ctx.flush_sessions(Time.now + 5000) + ctx.flush_sessions(Time.now + 10000) when 4 assert_equal(stats[:cache_num], 1) assert_equal(stats[:cache_hits], 2) assert_equal(stats[:cache_misses], 2) assert(!ssl.session_reused?) - ctx.session_add(saved_session) + ctx.session_add(OpenSSL::SSL::Session.new(saved_session)) end connections += 1 diff --git a/test/openssl/test_x509name.rb b/test/openssl/test_x509name.rb index d26174efdf..b87d415de2 100644 --- a/test/openssl/test_x509name.rb +++ b/test/openssl/test_x509name.rb @@ -5,11 +5,6 @@ require_relative 'utils' if defined?(OpenSSL::TestUtils) class OpenSSL::TestX509Name < OpenSSL::TestCase - OpenSSL::ASN1::ObjectId.register( - "1.2.840.113549.1.9.1", "emailAddress", "emailAddress") - OpenSSL::ASN1::ObjectId.register( - "2.5.4.5", "serialNumber", "serialNumber") - def setup @obj_type_tmpl = Hash.new(OpenSSL::ASN1::PRINTABLESTRING) @obj_type_tmpl.update(OpenSSL::X509::Name::OBJECT_TYPE_TEMPLATE) -- cgit v1.2.3