Fix test broken by disabled SSLv3 in OpenSSL.
This commit is contained in:
parent
d954989b45
commit
693a96cb40
@ -0,0 +1,25 @@
|
|||||||
|
From b9fa5fc9a14e6c889c9a0fa9c9386b2018f2314c Mon Sep 17 00:00:00 2001
|
||||||
|
From: Jeremy Evans <code@jeremyevans.net>
|
||||||
|
Date: Fri, 17 Jul 2015 11:25:09 -0600
|
||||||
|
Subject: [PATCH 4/8] Don't force SSLv3 in test, as it is insecure and may not
|
||||||
|
be supported
|
||||||
|
|
||||||
|
LibreSSL disables SSLv3 by default, and there's no reason this code
|
||||||
|
should require SSLv3.
|
||||||
|
|
||||||
|
diff --git test/openssl/test_ssl_session.rb test/openssl/test_ssl_session.rb
|
||||||
|
index 0c384c7..d4713d9 100644
|
||||||
|
--- test/openssl/test_ssl_session.rb
|
||||||
|
+++ test/openssl/test_ssl_session.rb
|
||||||
|
@@ -355,7 +355,7 @@ __EOS__
|
||||||
|
3.times do
|
||||||
|
sock = TCPSocket.new("127.0.0.1", port)
|
||||||
|
begin
|
||||||
|
- ssl = OpenSSL::SSL::SSLSocket.new(sock, OpenSSL::SSL::SSLContext.new("SSLv3"))
|
||||||
|
+ ssl = OpenSSL::SSL::SSLSocket.new(sock, OpenSSL::SSL::SSLContext.new)
|
||||||
|
ssl.sync_close = true
|
||||||
|
ssl.session = last_client_session if last_client_session
|
||||||
|
ssl.connect
|
||||||
|
--
|
||||||
|
2.4.5
|
||||||
|
|
@ -0,0 +1,23 @@
|
|||||||
|
From fb08c34eee2c883a01ab0dda2a2e34a290516a2a Mon Sep 17 00:00:00 2001
|
||||||
|
From: Jeremy Evans <code@jeremyevans.net>
|
||||||
|
Date: Fri, 17 Jul 2015 11:31:45 -0600
|
||||||
|
Subject: [PATCH 5/8] Use OP_NO_TICKET when testing SSL session cache callbacks
|
||||||
|
|
||||||
|
This fixes the test when using LibreSSL and possibly some
|
||||||
|
configurations of OpenSSL.
|
||||||
|
|
||||||
|
diff --git test/openssl/test_ssl_session.rb test/openssl/test_ssl_session.rb
|
||||||
|
index d4713d9..58fa20b 100644
|
||||||
|
--- test/openssl/test_ssl_session.rb
|
||||||
|
+++ test/openssl/test_ssl_session.rb
|
||||||
|
@@ -316,6 +316,7 @@ __EOS__
|
||||||
|
|
||||||
|
ctx_proc = Proc.new { |ctx, ssl|
|
||||||
|
ctx.session_cache_mode = OpenSSL::SSL::SSLContext::SESSION_CACHE_SERVER
|
||||||
|
+ ctx.options = OpenSSL::SSL::OP_NO_TICKET
|
||||||
|
last_server_session = nil
|
||||||
|
|
||||||
|
# get_cb is called whenever a client proposed to resume a session but
|
||||||
|
--
|
||||||
|
2.4.5
|
||||||
|
|
13
ruby-2.3.0-fix-test-ctx-client-session-cb.patch
Normal file
13
ruby-2.3.0-fix-test-ctx-client-session-cb.patch
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
Index: test/openssl/test_ssl_session.rb
|
||||||
|
===================================================================
|
||||||
|
--- test/openssl/test_ssl_session.rb (revision 49098)
|
||||||
|
+++ test/openssl/test_ssl_session.rb (revision 49099)
|
||||||
|
@@ -278,7 +278,7 @@
|
||||||
|
|
||||||
|
def test_ctx_client_session_cb
|
||||||
|
called = {}
|
||||||
|
- ctx = OpenSSL::SSL::SSLContext.new("SSLv3")
|
||||||
|
+ ctx = OpenSSL::SSL::SSLContext.new
|
||||||
|
ctx.session_cache_mode = OpenSSL::SSL::SSLContext::SESSION_CACHE_CLIENT
|
||||||
|
|
||||||
|
ctx.session_new_cb = lambda { |ary|
|
13
ruby.spec
13
ruby.spec
@ -117,6 +117,11 @@ Patch7: ruby-2.2.1-use-statfs.patch
|
|||||||
# https://github.com/rubygems/rubygems/issues/1289
|
# https://github.com/rubygems/rubygems/issues/1289
|
||||||
# https://github.com/ruby/ruby/commit/6398515adfc86813686605019a3e22d49cd95517
|
# https://github.com/ruby/ruby/commit/6398515adfc86813686605019a3e22d49cd95517
|
||||||
Patch8: ruby-2.3.0-test_gem_remote_fetcher.rb-get-rid-of-errors.patch
|
Patch8: ruby-2.3.0-test_gem_remote_fetcher.rb-get-rid-of-errors.patch
|
||||||
|
# Don't use SSLv3 for tests.
|
||||||
|
# https://bugs.ruby-lang.org/issues/10046
|
||||||
|
Patch9: ruby-2.3.0-fix-test-ctx-client-session-cb.patch
|
||||||
|
Patch10: ruby-2.3.0-Don-t-force-SSLv3-in-test-as-it-is-insecure-and-may-.patch
|
||||||
|
Patch11: ruby-2.3.0-Use-OP_NO_TICKET-when-testing-SSL-session-cache-call.patch
|
||||||
|
|
||||||
Requires: %{name}-libs%{?_isa} = %{version}-%{release}
|
Requires: %{name}-libs%{?_isa} = %{version}-%{release}
|
||||||
Requires: ruby(rubygems) >= %{rubygems_version}
|
Requires: ruby(rubygems) >= %{rubygems_version}
|
||||||
@ -419,6 +424,9 @@ rm -rf ext/fiddle/libffi*
|
|||||||
%patch6 -p1
|
%patch6 -p1
|
||||||
%patch7 -p1
|
%patch7 -p1
|
||||||
%patch8 -p1
|
%patch8 -p1
|
||||||
|
%patch9
|
||||||
|
%patch10
|
||||||
|
%patch11
|
||||||
|
|
||||||
# Provide an example of usage of the tapset:
|
# Provide an example of usage of the tapset:
|
||||||
cp -a %{SOURCE3} .
|
cp -a %{SOURCE3} .
|
||||||
@ -602,11 +610,6 @@ DISABLE_TESTS=""
|
|||||||
# the test suite).
|
# the test suite).
|
||||||
touch abrt.rb
|
touch abrt.rb
|
||||||
|
|
||||||
# Test is broken due to SSLv3 disabled in Fedora.
|
|
||||||
# https://bugs.ruby-lang.org/issues/10046
|
|
||||||
sed -i '/def test_ctx_client_session_cb$/,/^ end$/ s/^/#/' test/openssl/test_ssl_session.rb
|
|
||||||
sed -i '/def test_ctx_server_session_cb$/,/^ end$/ s/^/#/' test/openssl/test_ssl_session.rb
|
|
||||||
|
|
||||||
make check TESTS="-v $DISABLE_TESTS"
|
make check TESTS="-v $DISABLE_TESTS"
|
||||||
|
|
||||||
%post libs -p /sbin/ldconfig
|
%post libs -p /sbin/ldconfig
|
||||||
|
Loading…
x
Reference in New Issue
Block a user