|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
From fdad6204321a2dea41b9eb71e9579e1e45b64a28 Mon Sep 17 00:00:00 2001
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
From: =?UTF-8?q?V=C3=ADt=20Ondruch?= <vondruch@redhat.com>
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
Date: Tue, 7 Feb 2017 12:14:06 +0100
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
Subject: [PATCH] Fix compatility with Ruby OpenSSL 2.x+.
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
The DEFAULT_PARAMS does not list the ciphers anymore:
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
https://github.com/ruby/openssl/commit/b9aea270fbe1b3f8e806e86a28d8a27e242ab251
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
---
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
lib/restclient/request.rb | 2 +-
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
spec/unit/request_spec.rb | 26 ++++++++------------------
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
2 files changed, 9 insertions(+), 19 deletions(-)
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
diff --git a/lib/restclient/request.rb b/lib/restclient/request.rb
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
index 67b69e2..52287ce 100644
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
--- a/lib/restclient/request.rb
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
+++ b/lib/restclient/request.rb
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
@@ -195,7 +195,7 @@ module RestClient
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
# If we're on a Ruby version that has insecure default ciphers,
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
# override it with our default list.
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
if WeakDefaultCiphers.include?(
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
- OpenSSL::SSL::SSLContext::DEFAULT_PARAMS.fetch(:ciphers))
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
+ OpenSSL::SSL::SSLContext.new.ciphers)
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
@ssl_opts[:ciphers] = DefaultCiphers
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
end
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
end
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
diff --git a/spec/unit/request_spec.rb b/spec/unit/request_spec.rb
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
index d091ae0..0c7cfe2 100644
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
--- a/spec/unit/request_spec.rb
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
+++ b/spec/unit/request_spec.rb
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
@@ -899,15 +899,10 @@ describe RestClient::Request, :include_helpers do
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
end
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
it "should override ssl_ciphers with better defaults with weak default ciphers" do
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
- stub_const(
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
- '::OpenSSL::SSL::SSLContext::DEFAULT_PARAMS',
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
- {
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
- :ssl_version=>"SSLv23",
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
- :verify_mode=>1,
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
- :ciphers=>"ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM:+LOW",
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
- :options=>-2147480577,
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
- }
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
- )
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
+ expect(RestClient::Request::WeakDefaultCiphers)
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
+ .to receive(:include?)
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
+ .with(OpenSSL::SSL::SSLContext.new.ciphers)
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
+ .and_return(true)
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
@request = RestClient::Request.new(
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
:method => :put,
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
@@ -924,15 +919,10 @@ describe RestClient::Request, :include_helpers do
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
end
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
it "should not override ssl_ciphers with better defaults with different default ciphers" do
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
- stub_const(
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
- '::OpenSSL::SSL::SSLContext::DEFAULT_PARAMS',
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
- {
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
- :ssl_version=>"SSLv23",
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
- :verify_mode=>1,
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
- :ciphers=>"HIGH:!aNULL:!eNULL:!EXPORT:!LOW:!MEDIUM:!SSLv2",
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
- :options=>-2147480577,
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
- }
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
- )
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
+ expect(RestClient::Request::WeakDefaultCiphers)
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
+ .to receive(:include?)
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
+ .with(OpenSSL::SSL::SSLContext.new.ciphers)
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
+ .and_return(false)
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
@request = RestClient::Request.new(
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
:method => :put,
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
--
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
2.11.0
|
|
![](https://seccdn.libravatar.org/avatar/67dcb52d090d3f48b3ba686b9a50c61a39be8db5d9b8e4102b2aed8a2dc22109?s=16&d=retro) |
922a051 |
|