jruby-openssl 0.10.0-java → 0.10.1-java
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/History.md +12 -0
- data/Mavenfile +12 -33
- data/lib/jopenssl.jar +0 -0
- data/lib/jopenssl/_compat23.rb +71 -0
- data/lib/jopenssl/load.rb +13 -7
- data/lib/jopenssl/version.rb +3 -2
- data/lib/jopenssl19/openssl/ssl-internal.rb +104 -0
- data/lib/jopenssl22/openssl/ssl.rb +16 -16
- data/lib/jopenssl23/openssl.rb +1 -1
- data/lib/jopenssl23/openssl/bn.rb +2 -1
- data/lib/jopenssl23/openssl/buffering.rb +34 -23
- data/lib/jopenssl23/openssl/config.rb +65 -64
- data/lib/jopenssl23/openssl/digest.rb +1 -1
- data/lib/jopenssl23/openssl/pkey.rb +22 -34
- data/lib/jopenssl23/openssl/ssl.rb +187 -121
- data/lib/jopenssl23/openssl/x509.rb +7 -1
- data/lib/openssl/bn.rb +1 -3
- data/lib/openssl/buffering.rb +1 -3
- data/lib/openssl/cipher.rb +1 -3
- data/lib/openssl/config.rb +10 -4
- data/lib/openssl/digest.rb +1 -3
- data/lib/openssl/pkcs12.rb +1 -3
- data/lib/openssl/pkcs5.rb +22 -0
- data/lib/openssl/ssl-internal.rb +1 -3
- data/lib/openssl/ssl.rb +1 -3
- data/lib/openssl/x509-internal.rb +1 -3
- data/lib/openssl/x509.rb +1 -3
- data/pom.xml +12 -60
- metadata +4 -10
- data/integration/1.47/pom.xml +0 -15
- data/integration/1.48/pom.xml +0 -15
- data/integration/1.49/pom.xml +0 -15
- data/integration/1.50/pom.xml +0 -15
- data/integration/Mavenfile +0 -57
- data/integration/pom.xml +0 -122
- data/lib/jopenssl24.rb +0 -112
- data/lib/openssl/pkcs7.rb +0 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ade549d7f3aa3abc46be8284b770710b54be15c7
|
4
|
+
data.tar.gz: ebeb42397480403b859ddc8df78382228c5ad5d0
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 90a72129e758c1296a5e9f99835b9321da3ce2542c4079647b5d9eef0ac8754b437378b0b088c6a6b5800495dda0f1d359cf470b6335bc288ddf184cd3cbaebc
|
7
|
+
data.tar.gz: b706b8ed3d904e7ab69c50f2696aed1b20fd1cc42de1381f7e4db62992d975aa22bfb87a150c576d8a034688b009fe28a78d8b9cf3abb13fe708e72020a03191
|
data/History.md
CHANGED
@@ -1,3 +1,15 @@
|
|
1
|
+
## 0.10.1
|
2
|
+
|
3
|
+
* loading JOpenSSL's native ext part the JRuby 9.2 (internal) way
|
4
|
+
* avoid, once again, installing BC provider on boot (due OCSP support)
|
5
|
+
* [feat] support OpenSSL::KDF as a (semi) OpenSSL::PKCS5 replacement
|
6
|
+
* rename ugly-sh "Jopenssl" constant to **JOpenSSL**
|
7
|
+
* support PKCS7#decrypt with 1 argument (pkey only - without certificate)
|
8
|
+
* undo some of the call-sites in SSLSocket - account for sub-classes (#165)
|
9
|
+
* follow-up to provide == for X.509 types (like C-OpenSSL does in 2.1)
|
10
|
+
* validate iter parameter on Cipher#pkcs5_keyivgen (since OpenSSL 2.0.8)
|
11
|
+
* remove openssl/pkcs7.rb -> since 1.8 no longer supported
|
12
|
+
|
1
13
|
## 0.10.0
|
2
14
|
|
3
15
|
**NOTE:** dropped support for anything below ~ JRuby 1.7.20
|
data/Mavenfile
CHANGED
@@ -2,9 +2,6 @@
|
|
2
2
|
|
3
3
|
gemspec :jar => 'jopenssl', :include_jars => true
|
4
4
|
|
5
|
-
sonatype_url = 'https://oss.sonatype.org/content/repositories/snapshots/'
|
6
|
-
snapshot_repository :id => 'sonatype', :url => sonatype_url
|
7
|
-
|
8
5
|
distribution_management do
|
9
6
|
snapshot_repository :id => :ossrh, :url => 'https://oss.sonatype.org/content/repositories/snapshots'
|
10
7
|
repository :id => :ossrh, :url => 'https://oss.sonatype.org/service/local/staging/deploy/maven2/'
|
@@ -80,29 +77,24 @@ plugin :clean do
|
|
80
77
|
'failOnError' => 'false' )
|
81
78
|
end
|
82
79
|
|
83
|
-
|
84
|
-
# although we'd like to compile against 1.6 to make sure all is well
|
85
|
-
jar 'org.jruby:jruby-core', '1.7.17', :scope => :provided # 1.6.8
|
80
|
+
jar 'org.jruby:jruby-core', '1.7.20', :scope => :provided
|
86
81
|
jar 'junit:junit', '4.11', :scope => :test
|
87
82
|
|
88
83
|
jruby_plugin! :gem do
|
89
|
-
# when installing dependent gems we want to use the built in openssl
|
90
|
-
#
|
91
|
-
# we compile against jruby-core-1.7.17 and want to keep this out of
|
92
|
-
# the plugin execution here
|
84
|
+
# when installing dependent gems we want to use the built in openssl not the one from this lib directory
|
85
|
+
# we compile against jruby-core-1.7.20 and want to keep this out of the plugin execution here
|
93
86
|
execute_goal :id => 'default-initialize', :addProjectClasspath => false, :libDirectory => 'something-which-does-not-exists'
|
94
87
|
execute_goals :id => 'default-push', :skip => true
|
95
88
|
end
|
96
89
|
|
97
|
-
# we want to have the snapshots on oss.sonatype.org and the released gems
|
98
|
-
# on maven central
|
90
|
+
# we want to have the snapshots on oss.sonatype.org and the released gems on maven central
|
99
91
|
plugin :deploy, '2.8.1' do
|
100
92
|
execute_goals( :deploy, :skip => false )
|
101
93
|
end
|
102
94
|
|
103
95
|
supported_bc_versions = %w{ 1.55 1.56 1.57 1.58 1.59 }
|
104
96
|
|
105
|
-
default_bc_version = File.expand_path('lib/jopenssl/version.rb', File.dirname(__FILE__))
|
97
|
+
default_bc_version = File.read File.expand_path('lib/jopenssl/version.rb', File.dirname(__FILE__))
|
106
98
|
default_bc_version = default_bc_version[/BOUNCY_CASTLE_VERSION\s?=\s?'(.*?)'/, 1]
|
107
99
|
|
108
100
|
properties( 'jruby.plugins.version' => '1.0.10',
|
@@ -122,7 +114,11 @@ properties( 'jruby.plugins.version' => '1.0.10',
|
|
122
114
|
|
123
115
|
# make sure we have the embedded jars in place before we run runit plugin
|
124
116
|
plugin! :dependency do
|
125
|
-
execute_goal 'copy-dependencies',
|
117
|
+
execute_goal 'copy-dependencies',
|
118
|
+
:phase => 'generate-test-resources',
|
119
|
+
:outputDirectory => '${basedir}/lib',
|
120
|
+
:useRepositoryLayout => true,
|
121
|
+
:includeGroupIds => 'org.bouncycastle'
|
126
122
|
end
|
127
123
|
|
128
124
|
jruby_plugin(:runit) { execute_goal( :test, :runitDirectory => '${runit.dir}' ) }
|
@@ -141,26 +137,9 @@ invoker_run_options = {
|
|
141
137
|
'runit.dir' => '${runit.dir}' }
|
142
138
|
}
|
143
139
|
|
144
|
-
# profile :id => 'test-1.6.8' do
|
145
|
-
# plugin :invoker, '1.8' do
|
146
|
-
# execute_goals( :install, :run, invoker_run_options )
|
147
|
-
# end
|
148
|
-
# properties 'jruby.versions' => '1.6.8', 'jruby.modes' => '1.8,1.9',
|
149
|
-
# 'bc.versions' => supported_bc_versions.join(',')
|
150
|
-
# end
|
151
|
-
#
|
152
|
-
# profile :id => 'test-1.7.4' do
|
153
|
-
# plugin :invoker, '1.8' do
|
154
|
-
# execute_goals( :install, :run, invoker_run_options )
|
155
|
-
# end
|
156
|
-
# properties 'jruby.versions' => '1.7.4', 'jruby.modes' => '1.8,1.9',
|
157
|
-
# 'bc.versions' => supported_bc_versions.join(',')
|
158
|
-
# end
|
159
|
-
|
160
140
|
jruby_1_7_versions = %w{ 1.7.18 1.7.20 1.7.22 1.7.23 1.7.24 1.7.25 1.7.26 1.7.27 }
|
161
141
|
|
162
142
|
jruby_1_7_versions.each { |version|
|
163
|
-
|
164
143
|
profile :id => "test-#{version}" do
|
165
144
|
plugin :invoker, '1.8' do
|
166
145
|
execute_goals( :install, :run, invoker_run_options )
|
@@ -168,10 +147,9 @@ profile :id => "test-#{version}" do
|
|
168
147
|
properties 'jruby.versions' => version, 'jruby.modes' => '1.9,2.0',
|
169
148
|
'bc.versions' => supported_bc_versions.join(',')
|
170
149
|
end
|
171
|
-
|
172
150
|
}
|
173
151
|
|
174
|
-
jruby_9_K_versions = %w{ 9.0.1.0 9.0.5.0 9.1.2.0 9.1.
|
152
|
+
jruby_9_K_versions = %w{ 9.0.1.0 9.0.5.0 9.1.2.0 9.1.8.0 9.1.12.0 9.1.16.0 9.1.17.0 9.2.0.0 }
|
175
153
|
|
176
154
|
jruby_9_K_versions.each { |version|
|
177
155
|
profile :id => "test-#{version}" do
|
@@ -190,4 +168,5 @@ profile :id => 'release' do
|
|
190
168
|
execute_goal :sign, :phase => :verify
|
191
169
|
end
|
192
170
|
end
|
171
|
+
|
193
172
|
# vim: syntax=Ruby
|
data/lib/jopenssl.jar
CHANGED
Binary file
|
@@ -0,0 +1,71 @@
|
|
1
|
+
# frozen_string_literal: false
|
2
|
+
|
3
|
+
module OpenSSL
|
4
|
+
|
5
|
+
module PKey
|
6
|
+
|
7
|
+
class DH
|
8
|
+
|
9
|
+
def set_key(pub_key, priv_key)
|
10
|
+
self.pub_key = pub_key
|
11
|
+
self.priv_key = priv_key
|
12
|
+
self
|
13
|
+
end
|
14
|
+
|
15
|
+
def set_pqg(p, q, g)
|
16
|
+
self.p = p
|
17
|
+
if respond_to?(:q)
|
18
|
+
self.q = q
|
19
|
+
else # TODO self.q = q
|
20
|
+
OpenSSL.warn "JRuby-OpenSSL does not support setting q param on #{inspect}" if q
|
21
|
+
end
|
22
|
+
self.g = g
|
23
|
+
self
|
24
|
+
end
|
25
|
+
|
26
|
+
end
|
27
|
+
|
28
|
+
class DSA
|
29
|
+
|
30
|
+
def set_key(pub_key, priv_key)
|
31
|
+
self.pub_key = pub_key
|
32
|
+
self.priv_key = priv_key
|
33
|
+
self
|
34
|
+
end
|
35
|
+
|
36
|
+
def set_pqg(p, q, g)
|
37
|
+
self.p = p
|
38
|
+
self.q = q
|
39
|
+
self.g = g
|
40
|
+
self
|
41
|
+
end
|
42
|
+
|
43
|
+
end
|
44
|
+
|
45
|
+
class RSA
|
46
|
+
|
47
|
+
def set_key(n, e, d)
|
48
|
+
self.n = n
|
49
|
+
self.e = e
|
50
|
+
self.d = d
|
51
|
+
self
|
52
|
+
end
|
53
|
+
|
54
|
+
def set_factors(p, q)
|
55
|
+
self.p = p
|
56
|
+
self.q = q
|
57
|
+
self
|
58
|
+
end
|
59
|
+
|
60
|
+
def set_crt_params(dmp1, dmq1, iqmp)
|
61
|
+
self.dmp1 = dmp1
|
62
|
+
self.dmq1 = dmq1
|
63
|
+
self.iqmp = iqmp
|
64
|
+
self
|
65
|
+
end
|
66
|
+
|
67
|
+
end
|
68
|
+
|
69
|
+
end
|
70
|
+
|
71
|
+
end
|
data/lib/jopenssl/load.rb
CHANGED
@@ -1,13 +1,12 @@
|
|
1
1
|
warn 'Loading jruby-openssl gem in a non-JRuby interpreter' unless defined? JRUBY_VERSION
|
2
2
|
|
3
|
-
require 'java'
|
4
3
|
require 'jopenssl/version'
|
5
4
|
|
6
|
-
warn "JRuby #{JRUBY_VERSION} is not supported by jruby-openssl #{
|
5
|
+
warn "JRuby #{JRUBY_VERSION} is not supported by jruby-openssl #{JOpenSSL::VERSION}" if JRUBY_VERSION < '1.7.20'
|
7
6
|
|
8
7
|
# NOTE: assuming user does pull in BC .jars from somewhere else on the CP
|
9
8
|
unless ENV_JAVA['jruby.openssl.load.jars'].eql?('false')
|
10
|
-
version =
|
9
|
+
version = JOpenSSL::BOUNCY_CASTLE_VERSION
|
11
10
|
bc_jars = nil
|
12
11
|
begin
|
13
12
|
require 'jar-dependencies'
|
@@ -26,13 +25,17 @@ unless ENV_JAVA['jruby.openssl.load.jars'].eql?('false')
|
|
26
25
|
end
|
27
26
|
end
|
28
27
|
|
29
|
-
require 'jruby'
|
30
28
|
require 'jopenssl.jar'
|
31
|
-
|
29
|
+
|
30
|
+
if JRuby::Util.respond_to?(:load_ext) # JRuby 9.2
|
31
|
+
JRuby::Util.load_ext('org.jruby.ext.openssl.OpenSSL')
|
32
|
+
else; require 'jruby'
|
33
|
+
org.jruby.ext.openssl.OpenSSL.load(JRuby.runtime)
|
34
|
+
end
|
32
35
|
|
33
36
|
if RUBY_VERSION > '2.3'
|
34
37
|
load 'jopenssl23/openssl.rb'
|
35
|
-
load '
|
38
|
+
load 'jopenssl/_compat23.rb'
|
36
39
|
elsif RUBY_VERSION > '2.2'
|
37
40
|
load 'jopenssl22/openssl.rb'
|
38
41
|
elsif RUBY_VERSION > '2.1'
|
@@ -41,4 +44,7 @@ else
|
|
41
44
|
load 'jopenssl19/openssl.rb'
|
42
45
|
end
|
43
46
|
|
44
|
-
|
47
|
+
module OpenSSL
|
48
|
+
autoload :Config, 'openssl/config' unless const_defined?(:Config, false)
|
49
|
+
autoload :PKCS12, 'openssl/pkcs12'
|
50
|
+
end
|
data/lib/jopenssl/version.rb
CHANGED
@@ -19,6 +19,104 @@ require 'fcntl' # used by OpenSSL::SSL::Nonblock (if loaded)
|
|
19
19
|
|
20
20
|
module OpenSSL
|
21
21
|
module SSL
|
22
|
+
class SSLContext
|
23
|
+
DEFAULT_PARAMS = {
|
24
|
+
:ssl_version => "SSLv23",
|
25
|
+
:verify_mode => OpenSSL::SSL::VERIFY_PEER,
|
26
|
+
:ciphers => %w{
|
27
|
+
ECDHE-ECDSA-AES128-GCM-SHA256
|
28
|
+
ECDHE-RSA-AES128-GCM-SHA256
|
29
|
+
ECDHE-ECDSA-AES256-GCM-SHA384
|
30
|
+
ECDHE-RSA-AES256-GCM-SHA384
|
31
|
+
DHE-RSA-AES128-GCM-SHA256
|
32
|
+
DHE-DSS-AES128-GCM-SHA256
|
33
|
+
DHE-RSA-AES256-GCM-SHA384
|
34
|
+
DHE-DSS-AES256-GCM-SHA384
|
35
|
+
ECDHE-ECDSA-AES128-SHA256
|
36
|
+
ECDHE-RSA-AES128-SHA256
|
37
|
+
ECDHE-ECDSA-AES128-SHA
|
38
|
+
ECDHE-RSA-AES128-SHA
|
39
|
+
ECDHE-ECDSA-AES256-SHA384
|
40
|
+
ECDHE-RSA-AES256-SHA384
|
41
|
+
ECDHE-ECDSA-AES256-SHA
|
42
|
+
ECDHE-RSA-AES256-SHA
|
43
|
+
DHE-RSA-AES128-SHA256
|
44
|
+
DHE-RSA-AES256-SHA256
|
45
|
+
DHE-RSA-AES128-SHA
|
46
|
+
DHE-RSA-AES256-SHA
|
47
|
+
DHE-DSS-AES128-SHA256
|
48
|
+
DHE-DSS-AES256-SHA256
|
49
|
+
DHE-DSS-AES128-SHA
|
50
|
+
DHE-DSS-AES256-SHA
|
51
|
+
AES128-GCM-SHA256
|
52
|
+
AES256-GCM-SHA384
|
53
|
+
AES128-SHA256
|
54
|
+
AES256-SHA256
|
55
|
+
AES128-SHA
|
56
|
+
AES256-SHA
|
57
|
+
ECDHE-ECDSA-RC4-SHA
|
58
|
+
ECDHE-RSA-RC4-SHA
|
59
|
+
RC4-SHA
|
60
|
+
}.join(":"),
|
61
|
+
:options => -> {
|
62
|
+
opts = OpenSSL::SSL::OP_ALL
|
63
|
+
opts &= ~OpenSSL::SSL::OP_DONT_INSERT_EMPTY_FRAGMENTS if defined?(OpenSSL::SSL::OP_DONT_INSERT_EMPTY_FRAGMENTS)
|
64
|
+
opts |= OpenSSL::SSL::OP_NO_COMPRESSION if defined?(OpenSSL::SSL::OP_NO_COMPRESSION)
|
65
|
+
opts |= OpenSSL::SSL::OP_NO_SSLv2 if defined?(OpenSSL::SSL::OP_NO_SSLv2)
|
66
|
+
opts |= OpenSSL::SSL::OP_NO_SSLv3 if defined?(OpenSSL::SSL::OP_NO_SSLv3)
|
67
|
+
opts
|
68
|
+
}.call
|
69
|
+
} unless const_defined? :DEFAULT_PARAMS # JRuby does it in Java
|
70
|
+
|
71
|
+
begin
|
72
|
+
DEFAULT_CERT_STORE = OpenSSL::X509::Store.new
|
73
|
+
DEFAULT_CERT_STORE.set_default_paths
|
74
|
+
if defined?(OpenSSL::X509::V_FLAG_CRL_CHECK_ALL)
|
75
|
+
DEFAULT_CERT_STORE.flags = OpenSSL::X509::V_FLAG_CRL_CHECK_ALL
|
76
|
+
end
|
77
|
+
end unless const_defined? :DEFAULT_CERT_STORE
|
78
|
+
|
79
|
+
def set_params(params={})
|
80
|
+
params = DEFAULT_PARAMS.merge(params)
|
81
|
+
params.each{|name, value| self.__send__("#{name}=", value) }
|
82
|
+
if self.verify_mode != OpenSSL::SSL::VERIFY_NONE
|
83
|
+
unless self.ca_file or self.ca_path or self.cert_store
|
84
|
+
self.cert_store = DEFAULT_CERT_STORE
|
85
|
+
end
|
86
|
+
end
|
87
|
+
return params
|
88
|
+
end unless method_defined? :set_params
|
89
|
+
end
|
90
|
+
|
91
|
+
module SocketForwarder
|
92
|
+
def addr
|
93
|
+
to_io.addr
|
94
|
+
end
|
95
|
+
|
96
|
+
def peeraddr
|
97
|
+
to_io.peeraddr
|
98
|
+
end
|
99
|
+
|
100
|
+
def setsockopt(level, optname, optval)
|
101
|
+
to_io.setsockopt(level, optname, optval)
|
102
|
+
end
|
103
|
+
|
104
|
+
def getsockopt(level, optname)
|
105
|
+
to_io.getsockopt(level, optname)
|
106
|
+
end
|
107
|
+
|
108
|
+
def fcntl(*args)
|
109
|
+
to_io.fcntl(*args)
|
110
|
+
end
|
111
|
+
|
112
|
+
def closed?
|
113
|
+
to_io.closed?
|
114
|
+
end
|
115
|
+
|
116
|
+
def do_not_reverse_lookup=(flag)
|
117
|
+
to_io.do_not_reverse_lookup = flag
|
118
|
+
end
|
119
|
+
end
|
22
120
|
|
23
121
|
def verify_certificate_identity(cert, hostname)
|
24
122
|
should_verify_common_name = true
|
@@ -63,6 +161,12 @@ module OpenSSL
|
|
63
161
|
include SocketForwarder
|
64
162
|
include Nonblock
|
65
163
|
|
164
|
+
def sysclose
|
165
|
+
return if closed?
|
166
|
+
stop
|
167
|
+
io.close if sync_close
|
168
|
+
end unless method_defined? :sysclose
|
169
|
+
|
66
170
|
def post_connection_check(hostname)
|
67
171
|
unless OpenSSL::SSL.verify_certificate_identity(peer_cert, hostname)
|
68
172
|
raise SSLError, "hostname does not match the server certificate"
|
@@ -68,13 +68,13 @@ module OpenSSL
|
|
68
68
|
}.call
|
69
69
|
} unless const_defined? :DEFAULT_PARAMS # JRuby does it in Java
|
70
70
|
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
end
|
71
|
+
begin
|
72
|
+
DEFAULT_CERT_STORE = OpenSSL::X509::Store.new
|
73
|
+
DEFAULT_CERT_STORE.set_default_paths
|
74
|
+
if defined?(OpenSSL::X509::V_FLAG_CRL_CHECK_ALL)
|
75
|
+
DEFAULT_CERT_STORE.flags = OpenSSL::X509::V_FLAG_CRL_CHECK_ALL
|
76
|
+
end
|
77
|
+
end unless const_defined? :DEFAULT_CERT_STORE
|
78
78
|
|
79
79
|
##
|
80
80
|
# Sets the parameters for this SSL context to the values in +params+.
|
@@ -86,14 +86,14 @@ module OpenSSL
|
|
86
86
|
|
87
87
|
def set_params(params={})
|
88
88
|
params = DEFAULT_PARAMS.merge(params)
|
89
|
-
params.each{|name, value| self.__send__("#{name}=", value) }
|
89
|
+
params.each { |name, value| self.__send__("#{name}=", value) }
|
90
90
|
if self.verify_mode != OpenSSL::SSL::VERIFY_NONE
|
91
91
|
unless self.ca_file or self.ca_path or self.cert_store
|
92
92
|
self.cert_store = DEFAULT_CERT_STORE
|
93
93
|
end
|
94
94
|
end
|
95
95
|
return params
|
96
|
-
end unless method_defined? :set_params
|
96
|
+
end unless method_defined? :set_params
|
97
97
|
end
|
98
98
|
|
99
99
|
module SocketForwarder
|
@@ -124,7 +124,7 @@ module OpenSSL
|
|
124
124
|
def do_not_reverse_lookup=(flag)
|
125
125
|
to_io.do_not_reverse_lookup = flag
|
126
126
|
end
|
127
|
-
end
|
127
|
+
end
|
128
128
|
|
129
129
|
module Nonblock
|
130
130
|
def initialize(*args)
|
@@ -228,6 +228,12 @@ module OpenSSL
|
|
228
228
|
include SocketForwarder
|
229
229
|
include Nonblock
|
230
230
|
|
231
|
+
def sysclose
|
232
|
+
return if closed?
|
233
|
+
stop
|
234
|
+
io.close if sync_close
|
235
|
+
end unless method_defined? :sysclose
|
236
|
+
|
231
237
|
##
|
232
238
|
# Perform hostname verification after an SSL connection is established
|
233
239
|
#
|
@@ -248,12 +254,6 @@ module OpenSSL
|
|
248
254
|
return true
|
249
255
|
end
|
250
256
|
|
251
|
-
#def session
|
252
|
-
# SSL::Session.new(self)
|
253
|
-
#rescue SSL::Session::SessionError
|
254
|
-
# nil
|
255
|
-
#end
|
256
|
-
|
257
257
|
private
|
258
258
|
|
259
259
|
def using_anon_cipher?
|
data/lib/jopenssl23/openssl.rb
CHANGED