summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAzul <azul@riseup.net>2016-06-30 17:10:26 +0200
committerAzul <azul@riseup.net>2016-06-30 17:10:26 +0200
commit39697391452a1306e4aef3a5126bd2b9639b5936 (patch)
tree9e8516f9eb2e09bb7203011fdcd51f75e9ac281d
parentfe9a23419f9a875a98fc05dc22e2ad6c5f6dbe3b (diff)
use proper ssl connection with ca_file - green!
-rw-r--r--lib/nickserver/adapters/celluloid_http.rb6
-rw-r--r--test/unit/adapters/celluloid_http_test.rb9
2 files changed, 15 insertions, 0 deletions
diff --git a/lib/nickserver/adapters/celluloid_http.rb b/lib/nickserver/adapters/celluloid_http.rb
index 5ded702..9e5fa3b 100644
--- a/lib/nickserver/adapters/celluloid_http.rb
+++ b/lib/nickserver/adapters/celluloid_http.rb
@@ -9,9 +9,15 @@ module Nickserver::Adapters
def get(url, options = {})
response = HTTP.get url,
params: options[:query],
+ ssl_context: ctx,
ssl_socket_class: Celluloid::IO::SSLSocket
yield response.code, response.to_s
end
+ def ctx
+ OpenSSL::SSL::SSLContext.new.tap do |ctx|
+ ctx.ca_file = Nickserver::Config.hkp_ca_file
+ end
+ end
end
end
diff --git a/test/unit/adapters/celluloid_http_test.rb b/test/unit/adapters/celluloid_http_test.rb
index c3c58b1..c9ea411 100644
--- a/test/unit/adapters/celluloid_http_test.rb
+++ b/test/unit/adapters/celluloid_http_test.rb
@@ -25,6 +25,15 @@ class Nickserver::Adapters::CelluloidHttpTest < Minitest::Test
end
end
+ def test_https_for_hkp
+ url = Nickserver::Config.hkp_url
+ real_network do
+ adapter.get url do |status, _body|
+ assert_equal 404, status
+ end
+ end
+ end
+
protected
def adapter