Skip to content

Instantly share code, notes, and snippets.

@znz
Created January 21, 2014 00:45
Show Gist options
  • Save znz/8532272 to your computer and use it in GitHub Desktop.
Save znz/8532272 to your computer and use it in GitHub Desktop.
ssl.peer_cert after ssl.close
% rbenv each -v ruby /tmp/s.rb
===[1.8.7-debian]=======================================================
OpenSSL::X509::Certificate
OpenSSL::X509::Certificate
===[1.8.7-p357]=========================================================
/tmp/s.rb:4:in `require': no such file to load -- openssl (LoadError)
from /tmp/s.rb:4
===[1.8.7-p358]=========================================================
OpenSSL::X509::Certificate
OpenSSL::X509::Certificate
===[1.8.7-p370]=========================================================
OpenSSL::X509::Certificate
OpenSSL::X509::Certificate
===[1.8.7-p371]=========================================================
OpenSSL::X509::Certificate
OpenSSL::X509::Certificate
===[1.9.2-p290]=========================================================
OpenSSL::X509::Certificate
OpenSSL::X509::Certificate
===[1.9.3-p0]===========================================================
/home/kazu/.rbenv/versions/1.9.3-p0/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require': cannot load such file -- openssl (LoadError)
from /home/kazu/.rbenv/versions/1.9.3-p0/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
from /tmp/s.rb:4:in `<main>'
===[1.9.3-p125]=========================================================
OpenSSL::X509::Certificate
OpenSSL::X509::Certificate
===[1.9.3-p194]=========================================================
OpenSSL::X509::Certificate
OpenSSL::X509::Certificate
===[1.9.3-p286]=========================================================
OpenSSL::X509::Certificate
OpenSSL::X509::Certificate
===[1.9.3-p327]=========================================================
OpenSSL::X509::Certificate
OpenSSL::X509::Certificate
===[1.9.3-p362]=========================================================
OpenSSL::X509::Certificate
OpenSSL::X509::Certificate
===[1.9.3-p385]=========================================================
OpenSSL::X509::Certificate
OpenSSL::X509::Certificate
===[1.9.3-p392]=========================================================
OpenSSL::X509::Certificate
OpenSSL::X509::Certificate
===[1.9.3-p448]=========================================================
OpenSSL::X509::Certificate
NilClass
===[2.0.0-p0]===========================================================
OpenSSL::X509::Certificate
OpenSSL::X509::Certificate
===[2.0.0-p195]=========================================================
OpenSSL::X509::Certificate
NilClass
===[2.0.0-p247]=========================================================
OpenSSL::X509::Certificate
NilClass
FAILED IN: 1.8.7-p357 1.9.3-p0
#!/usr/bin/env ruby
# -*- encoding: utf-8 -*-
require 'socket'
require 'openssl'
TCPSocket.open('localhost', 443) do |sock|
ssl = OpenSSL::SSL::SSLSocket.new(sock)
ssl.sync_close = true
ssl.connect
p ssl.peer_cert.class
ssl.close
p ssl.peer_cert.class
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment