jruby-openssl 0.7.4 → 0.7.6.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/.gemtest +0 -0
- data/History.txt +51 -14
- data/Manifest.txt +136 -79
- data/README.txt +1 -1
- data/Rakefile +17 -8
- data/lib/{openssl → 1.8/openssl}/bn.rb +2 -2
- data/lib/{openssl → 1.8/openssl}/buffering.rb +3 -1
- data/lib/{openssl → 1.8/openssl}/cipher.rb +0 -0
- data/lib/{openssl → 1.8/openssl}/config.rb +1 -1
- data/lib/{openssl → 1.8/openssl}/digest.rb +2 -2
- data/lib/{openssl → 1.8/openssl}/pkcs7.rb +0 -0
- data/lib/{openssl/ssl.rb → 1.8/openssl/ssl-internal.rb} +2 -2
- data/lib/1.8/openssl/ssl.rb +1 -0
- data/lib/{openssl/x509.rb → 1.8/openssl/x509-internal.rb} +8 -9
- data/lib/1.8/openssl/x509.rb +1 -0
- data/lib/{openssl.rb → 1.8/openssl.rb} +2 -11
- data/lib/1.9/openssl/bn.rb +35 -0
- data/lib/1.9/openssl/buffering.rb +448 -0
- data/lib/1.9/openssl/cipher.rb +65 -0
- data/lib/1.9/openssl/config.rb +313 -0
- data/lib/1.9/openssl/digest.rb +72 -0
- data/lib/1.9/openssl/ssl-internal.rb +177 -0
- data/lib/1.9/openssl/ssl.rb +2 -0
- data/lib/1.9/openssl/x509-internal.rb +158 -0
- data/lib/1.9/openssl/x509.rb +2 -0
- data/lib/1.9/openssl.rb +22 -0
- data/lib/{jopenssl → shared/jopenssl}/version.rb +1 -1
- data/lib/shared/jopenssl.jar +0 -0
- data/lib/{openssl → shared/openssl}/dummy.rb +0 -0
- data/lib/{openssl → shared/openssl}/dummyssl.rb +0 -0
- data/lib/shared/openssl/pkcs12.rb +50 -0
- data/lib/shared/openssl/ssl.rb +1 -0
- data/lib/shared/openssl/x509.rb +1 -0
- data/lib/shared/openssl.rb +20 -0
- data/test/{openssl → 1.8}/ssl_server.rb +0 -0
- data/test/{openssl → 1.8}/test_asn1.rb +15 -0
- data/test/{openssl → 1.8}/test_cipher.rb +0 -0
- data/test/{openssl → 1.8}/test_config.rb +0 -0
- data/test/{openssl → 1.8}/test_digest.rb +0 -0
- data/test/{openssl → 1.8}/test_ec.rb +0 -0
- data/test/{openssl → 1.8}/test_hmac.rb +0 -0
- data/test/{openssl → 1.8}/test_ns_spki.rb +0 -0
- data/test/{openssl → 1.8}/test_pair.rb +10 -2
- data/test/{openssl → 1.8}/test_pkcs7.rb +0 -0
- data/test/{openssl → 1.8}/test_pkey_rsa.rb +0 -0
- data/test/{openssl → 1.8}/test_ssl.rb +17 -20
- data/test/{openssl → 1.8}/test_x509cert.rb +0 -0
- data/test/{openssl → 1.8}/test_x509crl.rb +0 -0
- data/test/{openssl → 1.8}/test_x509ext.rb +0 -0
- data/test/{openssl → 1.8}/test_x509name.rb +0 -0
- data/test/{openssl → 1.8}/test_x509req.rb +0 -0
- data/test/{openssl → 1.8}/test_x509store.rb +0 -0
- data/test/{openssl → 1.8}/utils.rb +0 -0
- data/test/1.9/ssl_server.rb +81 -0
- data/test/1.9/test_asn1.rb +589 -0
- data/test/1.9/test_bn.rb +23 -0
- data/test/1.9/test_buffering.rb +88 -0
- data/test/1.9/test_cipher.rb +107 -0
- data/test/1.9/test_config.rb +288 -0
- data/test/1.9/test_digest.rb +118 -0
- data/test/1.9/test_engine.rb +15 -0
- data/test/1.9/test_hmac.rb +32 -0
- data/test/1.9/test_ns_spki.rb +50 -0
- data/test/1.9/test_ocsp.rb +47 -0
- data/test/1.9/test_pair.rb +257 -0
- data/test/1.9/test_pkcs12.rb +209 -0
- data/test/1.9/test_pkcs7.rb +151 -0
- data/test/1.9/test_pkey_dh.rb +72 -0
- data/test/1.9/test_pkey_dsa.rb +224 -0
- data/test/1.9/test_pkey_ec.rb +182 -0
- data/test/1.9/test_pkey_rsa.rb +244 -0
- data/test/1.9/test_ssl.rb +455 -0
- data/test/1.9/test_ssl_session.rb +327 -0
- data/test/1.9/test_x509cert.rb +217 -0
- data/test/1.9/test_x509crl.rb +221 -0
- data/test/1.9/test_x509ext.rb +69 -0
- data/test/1.9/test_x509name.rb +296 -0
- data/test/1.9/test_x509req.rb +150 -0
- data/test/1.9/test_x509store.rb +229 -0
- data/test/1.9/utils.rb +304 -0
- data/test/fixture/ids_in_subject_rdn_set.pem +31 -0
- data/test/fixture/purpose/ca/ca_config.rb +1 -1
- data/test/fixture/purpose/ca/gen_cert.rb +128 -0
- data/test/fixture/purpose/ca/newcerts/4_cert.pem +19 -0
- data/test/fixture/purpose/ca/serial +1 -1
- data/test/fixture/purpose/sslserver_no_dsig_in_keyUsage.pem +19 -0
- data/test/ruby/envutil.rb +208 -0
- data/test/ruby/ut_eof.rb +128 -0
- data/test/test_certificate.rb +9 -0
- data/test/test_java.rb +1 -1
- data/test/test_openssl.rb +1 -1
- data/test/test_pkcs7.rb +16 -0
- data/test/test_pkey_dsa.rb +180 -0
- data/test/test_pkey_rsa.rb +298 -0
- data/test/test_ssl.rb +1 -1
- data/test/test_x509store.rb +8 -0
- metadata +133 -73
- data/lib/jopenssl.jar +0 -0
- data/test/test_pkey.rb +0 -204
data/.gemtest
ADDED
|
File without changes
|
data/History.txt
CHANGED
|
@@ -1,6 +1,28 @@
|
|
|
1
|
+
== 0.7.6
|
|
2
|
+
|
|
3
|
+
This release includes initial implementation of PKCS12 by Owen Ou.
|
|
4
|
+
|
|
5
|
+
- JRUBY-5066: Implement OpenSSL::PKCS12 (only for simple case)
|
|
6
|
+
- JRUBY-6385: Assertion failure with -J-ea
|
|
7
|
+
|
|
8
|
+
== 0.7.5
|
|
9
|
+
|
|
10
|
+
This release improved 1.9 mode support with help of
|
|
11
|
+
Duncan Mak <duncan@earthaid.net>. Now jruby-ossl gem includes both 1.8 and 1.9
|
|
12
|
+
libraries and part of features should work fine on 1.9 mode, too.
|
|
13
|
+
|
|
14
|
+
- JRUBY-6270: Wrong keyUsage check for SSL server
|
|
15
|
+
- JRUBY-6260: OpenSSL::ASN1::Integer#value incompatibility
|
|
16
|
+
- JRUBY-6044: Improve Ecrypted RSA/DSA pem support
|
|
17
|
+
- JRUBY-5972: Allow to load/dump empty PKCS7 data
|
|
18
|
+
- JRUBY-5834: Fix X509Name handling; X509Name RDN can include multiple elements
|
|
19
|
+
- JRUBY-5362: Improved 1.9 support
|
|
20
|
+
- JRUBY-4992: Warn if loaded by non JRuby interpreter
|
|
21
|
+
|
|
1
22
|
== 0.7.4
|
|
2
23
|
|
|
3
|
-
- JRUBY-5519: Avoid String encoding dependency in DER loading. PEM loading
|
|
24
|
+
- JRUBY-5519: Avoid String encoding dependency in DER loading. PEM loading
|
|
25
|
+
failed on JRuby 1.6.x. Fixed.
|
|
4
26
|
- JRUBY-5510: Add debug information to released jar
|
|
5
27
|
- JRUBY-5478: Update bouncycastle jars to the latest version. (1.46)
|
|
6
28
|
|
|
@@ -59,18 +81,22 @@
|
|
|
59
81
|
-- JRUBY-4342: Follow ruby-openssl of CRuby 1.8.7.
|
|
60
82
|
-- JRUBY-4346: Sync tests with tests for ruby-openssl of CRuby 1.8.7.
|
|
61
83
|
-- JRUBY-4444: OpenSSL crash running RubyGems tests
|
|
62
|
-
-- JRUBY-4075: Net::SSH gives OpenSSL::Cipher::CipherError "No message
|
|
84
|
+
-- JRUBY-4075: Net::SSH gives OpenSSL::Cipher::CipherError "No message
|
|
85
|
+
available"
|
|
63
86
|
-- JRUBY-4076: Net::SSH padding error using 3des-cbc on Solaris
|
|
64
87
|
-- JRUBY-4541: jruby-openssl doesn't load on App Engine.
|
|
65
88
|
-- JRUBY-4077: Net::SSH "all authorization methods failed" Solaris -> Solaris
|
|
66
89
|
-- JRUBY-4535: Issues with the BouncyCastle provider
|
|
67
90
|
-- JRUBY-4510: JRuby-OpenSSL crashes when JCE fails a initialise bcprov
|
|
68
|
-
-- JRUBY-4343: Update BouncyCastle jar to upstream version; jdk14-139 ->
|
|
91
|
+
-- JRUBY-4343: Update BouncyCastle jar to upstream version; jdk14-139 ->
|
|
92
|
+
jdk15-144
|
|
69
93
|
- Cipher issues
|
|
70
|
-
-- JRUBY-4012: Initialization vector length handled differently than in MRI
|
|
94
|
+
-- JRUBY-4012: Initialization vector length handled differently than in MRI
|
|
95
|
+
(longer IV sequence are trimmed to fit the required)
|
|
71
96
|
-- JRUBY-4473: Implemented DSA key generation
|
|
72
97
|
-- JRUBY-4472: Cipher does not support RC4 and CAST
|
|
73
|
-
-- JRUBY-4577: InvalidParameterException 'Wrong keysize: must be equal to 112 or
|
|
98
|
+
-- JRUBY-4577: InvalidParameterException 'Wrong keysize: must be equal to 112 or
|
|
99
|
+
168' for DES3 + SunJCE
|
|
74
100
|
- SSL and X.509(PKIX) issues
|
|
75
101
|
-- JRUBY-4384: TCP socket connection causes busy loop of SSL server
|
|
76
102
|
-- JRUBY-4370: Implement SSLContext#ciphers
|
|
@@ -80,16 +106,23 @@
|
|
|
80
106
|
-- JRUBY-4684: SSLContext#verify_depth is ignored
|
|
81
107
|
-- JRUBY-4398: SSLContext#options does not affect to SSL sessions
|
|
82
108
|
-- JRUBY-4360: Implement SSLSocket#verify_result and dependents
|
|
83
|
-
-- JRUBY-3829: SSLSocket#read should clear given buffer before concatenating
|
|
84
|
-
|
|
109
|
+
-- JRUBY-3829: SSLSocket#read should clear given buffer before concatenating
|
|
110
|
+
(ByteBuffer.java:328:in `allocate': java.lang.IllegalArgumentException when
|
|
111
|
+
returning SOAP queries over a certain size)
|
|
112
|
+
-- JRUBY-4686: SSLSocket can drop last chunk of data just before inbound channel
|
|
113
|
+
close
|
|
85
114
|
-- JRUBY-4369: X509Store#verify_callback is not called
|
|
86
|
-
-- JRUBY-4409: OpenSSL::X509::Store#add_file corrupts when it includes
|
|
115
|
+
-- JRUBY-4409: OpenSSL::X509::Store#add_file corrupts when it includes
|
|
116
|
+
certificates which have the same subject (problem with
|
|
117
|
+
ruby-openid-apps-discovery (github jruby-openssl issue #2))
|
|
87
118
|
-- JRUBY-4333: PKCS#8 formatted privkey read
|
|
88
119
|
-- JRUBY-4454: Loading Key file as a Certificate causes NPE
|
|
89
|
-
-- JRUBY-4455: calling X509::Certificate#sign for the Certificate initialized
|
|
120
|
+
-- JRUBY-4455: calling X509::Certificate#sign for the Certificate initialized
|
|
121
|
+
from PEM causes IllegalStateException
|
|
90
122
|
- PKCS#7 issues
|
|
91
123
|
-- JRUBY-4379: PKCS7#sign failed for DES3 cipher algorithm
|
|
92
|
-
-- JRUBY-4428: Allow to use DES-EDE3-CBC in PKCS#7 w/o the Policy Files (rake
|
|
124
|
+
-- JRUBY-4428: Allow to use DES-EDE3-CBC in PKCS#7 w/o the Policy Files (rake
|
|
125
|
+
test doesn't finish on JDK5 w/o policy files update)
|
|
93
126
|
- Misc
|
|
94
127
|
-- JRUBY-4574: jruby-openssl deprecation warning cleanup
|
|
95
128
|
-- JRUBY-4591: jruby-1.4 support
|
|
@@ -132,21 +165,25 @@
|
|
|
132
165
|
|
|
133
166
|
== 0.5.1
|
|
134
167
|
|
|
135
|
-
* Multiple fixes by Brice Figureau to get net/ssh working. Requires JRuby 1.3.1
|
|
168
|
+
* Multiple fixes by Brice Figureau to get net/ssh working. Requires JRuby 1.3.1
|
|
169
|
+
to be 100%
|
|
136
170
|
* Fix by Frederic Jean for a character-decoding issue for some certificates
|
|
137
171
|
|
|
138
172
|
== 0.5
|
|
139
173
|
|
|
140
174
|
* Fixed JRUBY-3614: Unsupported HMAC algorithm (HMACSHA-256)
|
|
141
|
-
* Fixed JRUBY-3570: ActiveMerchant's AuthorizeNet Gateway throws OpenSSL Cert
|
|
175
|
+
* Fixed JRUBY-3570: ActiveMerchant's AuthorizeNet Gateway throws OpenSSL Cert
|
|
176
|
+
Validation Error, when there should be no error
|
|
142
177
|
* Fixed JRUBY-3557 Class cast exception in PKeyRSA.java
|
|
143
178
|
* Fixed JRUBY-3468 X.509 certificates: subjectKeyIdentifier corrupted
|
|
144
|
-
* Fixed JRUBY-3285 Unsupported HMAC algorithm (HMACSHA1) error when generating
|
|
179
|
+
* Fixed JRUBY-3285 Unsupported HMAC algorithm (HMACSHA1) error when generating
|
|
180
|
+
digest
|
|
145
181
|
* Misc code cleanup
|
|
146
182
|
|
|
147
183
|
== 0.2
|
|
148
184
|
|
|
149
|
-
- Enable remaining tests; fix a nil string issue in SSLSocket.sysread
|
|
185
|
+
- Enable remaining tests; fix a nil string issue in SSLSocket.sysread
|
|
186
|
+
(JRUBY-1888)
|
|
150
187
|
- Fix socket buffering issue by setting socket IO sync = true
|
|
151
188
|
- Fix bad file descriptor issue caused by unnecessary close (JRUBY-2152)
|
|
152
189
|
- Fix AES key length (JRUBY-2187)
|
data/Manifest.txt
CHANGED
|
@@ -3,113 +3,170 @@ History.txt
|
|
|
3
3
|
Manifest.txt
|
|
4
4
|
README.txt
|
|
5
5
|
License.txt
|
|
6
|
-
lib/jopenssl.jar
|
|
7
|
-
lib/
|
|
8
|
-
lib/
|
|
9
|
-
lib/
|
|
10
|
-
lib/openssl.rb
|
|
11
|
-
lib/openssl
|
|
12
|
-
lib/openssl/
|
|
13
|
-
lib/openssl/
|
|
14
|
-
lib/openssl/cipher.rb
|
|
15
|
-
lib/openssl/
|
|
16
|
-
lib/openssl/
|
|
17
|
-
lib/openssl/
|
|
18
|
-
lib/openssl/
|
|
19
|
-
lib/openssl/
|
|
20
|
-
lib/openssl/
|
|
21
|
-
lib/jopenssl
|
|
22
|
-
|
|
6
|
+
lib/shared/jopenssl.jar
|
|
7
|
+
lib/1.9
|
|
8
|
+
lib/shared
|
|
9
|
+
lib/1.8
|
|
10
|
+
lib/1.9/openssl.rb
|
|
11
|
+
lib/1.9/openssl
|
|
12
|
+
lib/1.9/openssl/bn.rb
|
|
13
|
+
lib/1.9/openssl/x509-internal.rb
|
|
14
|
+
lib/1.9/openssl/cipher.rb
|
|
15
|
+
lib/1.9/openssl/digest.rb
|
|
16
|
+
lib/1.9/openssl/ssl.rb
|
|
17
|
+
lib/1.9/openssl/buffering.rb
|
|
18
|
+
lib/1.9/openssl/ssl-internal.rb
|
|
19
|
+
lib/1.9/openssl/x509.rb
|
|
20
|
+
lib/1.9/openssl/config.rb
|
|
21
|
+
lib/shared/jopenssl.jar
|
|
22
|
+
lib/shared/openssl.rb
|
|
23
|
+
lib/shared/openssl
|
|
24
|
+
lib/shared/jopenssl
|
|
25
|
+
lib/shared/openssl/dummyssl.rb
|
|
26
|
+
lib/shared/openssl/ssl.rb
|
|
27
|
+
lib/shared/openssl/pkcs12.rb
|
|
28
|
+
lib/shared/openssl/x509.rb
|
|
29
|
+
lib/shared/openssl/dummy.rb
|
|
30
|
+
lib/shared/jopenssl/version.rb
|
|
31
|
+
lib/1.8/openssl.rb
|
|
32
|
+
lib/1.8/openssl
|
|
33
|
+
lib/1.8/openssl/bn.rb
|
|
34
|
+
lib/1.8/openssl/pkcs7.rb
|
|
35
|
+
lib/1.8/openssl/x509-internal.rb
|
|
36
|
+
lib/1.8/openssl/cipher.rb
|
|
37
|
+
lib/1.8/openssl/digest.rb
|
|
38
|
+
lib/1.8/openssl/ssl.rb
|
|
39
|
+
lib/1.8/openssl/buffering.rb
|
|
40
|
+
lib/1.8/openssl/ssl-internal.rb
|
|
41
|
+
lib/1.8/openssl/x509.rb
|
|
42
|
+
lib/1.8/openssl/config.rb
|
|
43
|
+
test/1.9
|
|
44
|
+
test/ref
|
|
23
45
|
test/test_all.rb
|
|
46
|
+
test/test_pkey_dsa.rb
|
|
47
|
+
test/fixture
|
|
24
48
|
test/test_integration.rb
|
|
25
|
-
test/
|
|
26
|
-
test/
|
|
27
|
-
test/
|
|
49
|
+
test/ruby
|
|
50
|
+
test/test_ssl.rb
|
|
51
|
+
test/test_parse_certificate.rb
|
|
28
52
|
test/test_openssl.rb
|
|
29
|
-
test/test_pkey.rb
|
|
30
|
-
test/ref
|
|
31
|
-
test/test_cipher.rb
|
|
32
53
|
test/cert_with_ec_pk.cer
|
|
33
|
-
test/
|
|
34
|
-
test/
|
|
54
|
+
test/java
|
|
55
|
+
test/ut_eof.rb
|
|
35
56
|
test/test_x509store.rb
|
|
57
|
+
test/test_imaps.rb
|
|
36
58
|
test/test_certificate.rb
|
|
37
|
-
test/
|
|
38
|
-
test/
|
|
39
|
-
test/
|
|
40
|
-
test/
|
|
41
|
-
test/
|
|
42
|
-
test/
|
|
43
|
-
test/
|
|
44
|
-
test/
|
|
45
|
-
test/
|
|
46
|
-
test/
|
|
47
|
-
test/
|
|
48
|
-
test/
|
|
49
|
-
test/
|
|
50
|
-
test/
|
|
51
|
-
test/
|
|
52
|
-
test/
|
|
53
|
-
test/
|
|
54
|
-
test/
|
|
55
|
-
test/
|
|
56
|
-
test/
|
|
57
|
-
test/
|
|
58
|
-
test/
|
|
59
|
-
test/
|
|
59
|
+
test/test_pkcs7.rb
|
|
60
|
+
test/test_cipher.rb
|
|
61
|
+
test/1.8
|
|
62
|
+
test/test_pkey_rsa.rb
|
|
63
|
+
test/test_java.rb
|
|
64
|
+
test/1.9/test_ssl_session.rb
|
|
65
|
+
test/1.9/test_engine.rb
|
|
66
|
+
test/1.9/test_asn1.rb
|
|
67
|
+
test/1.9/test_pkey_dh.rb
|
|
68
|
+
test/1.9/test_pkey_dsa.rb
|
|
69
|
+
test/1.9/test_ocsp.rb
|
|
70
|
+
test/1.9/ssl_server.rb
|
|
71
|
+
test/1.9/test_x509ext.rb
|
|
72
|
+
test/1.9/utils.rb
|
|
73
|
+
test/1.9/test_ssl.rb
|
|
74
|
+
test/1.9/test_buffering.rb
|
|
75
|
+
test/1.9/test_ns_spki.rb
|
|
76
|
+
test/1.9/test_digest.rb
|
|
77
|
+
test/1.9/test_pair.rb
|
|
78
|
+
test/1.9/test_x509crl.rb
|
|
79
|
+
test/1.9/test_x509store.rb
|
|
80
|
+
test/1.9/test_bn.rb
|
|
81
|
+
test/1.9/test_pkey_ec.rb
|
|
82
|
+
test/1.9/test_pkcs7.rb
|
|
83
|
+
test/1.9/test_pkcs12.rb
|
|
84
|
+
test/1.9/test_cipher.rb
|
|
85
|
+
test/1.9/test_pkey_rsa.rb
|
|
86
|
+
test/1.9/test_x509req.rb
|
|
87
|
+
test/1.9/test_x509name.rb
|
|
88
|
+
test/1.9/test_hmac.rb
|
|
89
|
+
test/1.9/test_x509cert.rb
|
|
90
|
+
test/1.9/test_config.rb
|
|
60
91
|
test/ref/a.out
|
|
61
92
|
test/ref/pkcs1
|
|
62
93
|
test/ref/pkcs1.c
|
|
63
|
-
test/
|
|
64
|
-
test/fixture/ca-bundle.crt
|
|
94
|
+
test/ref/compile.rb
|
|
65
95
|
test/fixture/common.pem
|
|
96
|
+
test/fixture/ca_path
|
|
66
97
|
test/fixture/key_then_cert.pem
|
|
98
|
+
test/fixture/imaps
|
|
99
|
+
test/fixture/keypair.pem
|
|
100
|
+
test/fixture/cacert.pem
|
|
67
101
|
test/fixture/verisign.pem
|
|
102
|
+
test/fixture/purpose
|
|
68
103
|
test/fixture/cert_localhost.pem
|
|
69
|
-
test/fixture/localhost_keypair.pem
|
|
70
|
-
test/fixture/verisign_c3.pem
|
|
71
104
|
test/fixture/selfcert.pem
|
|
72
105
|
test/fixture/max.pem
|
|
73
|
-
test/fixture/
|
|
74
|
-
test/fixture/
|
|
75
|
-
test/fixture/
|
|
76
|
-
test/fixture/
|
|
77
|
-
test/fixture/
|
|
78
|
-
test/fixture/
|
|
79
|
-
test/fixture/
|
|
106
|
+
test/fixture/localhost_keypair.pem
|
|
107
|
+
test/fixture/ids_in_subject_rdn_set.pem
|
|
108
|
+
test/fixture/ca-bundle.crt
|
|
109
|
+
test/fixture/verisign_c3.pem
|
|
110
|
+
test/fixture/ca_path/72fa7371.0
|
|
111
|
+
test/fixture/ca_path/verisign.pem
|
|
112
|
+
test/fixture/imaps/cacert.pem
|
|
113
|
+
test/fixture/imaps/server.crt
|
|
114
|
+
test/fixture/imaps/server.key
|
|
80
115
|
test/fixture/purpose/ca
|
|
81
|
-
test/fixture/purpose/sslclient
|
|
82
|
-
test/fixture/purpose/sslserver.pem
|
|
116
|
+
test/fixture/purpose/sslclient
|
|
83
117
|
test/fixture/purpose/scripts
|
|
118
|
+
test/fixture/purpose/sslserver_no_dsig_in_keyUsage.pem
|
|
119
|
+
test/fixture/purpose/cacert.pem
|
|
84
120
|
test/fixture/purpose/sslserver
|
|
85
|
-
test/fixture/purpose/
|
|
86
|
-
test/fixture/purpose/sslclient
|
|
87
|
-
test/fixture/purpose/
|
|
88
|
-
test/fixture/purpose/ca/
|
|
89
|
-
test/fixture/purpose/ca/
|
|
121
|
+
test/fixture/purpose/sslserver.pem
|
|
122
|
+
test/fixture/purpose/sslclient.pem
|
|
123
|
+
test/fixture/purpose/b70a5bc1.0
|
|
124
|
+
test/fixture/purpose/ca/serial
|
|
125
|
+
test/fixture/purpose/ca/gen_cert.rb
|
|
90
126
|
test/fixture/purpose/ca/PASSWD_OF_CA_KEY_IS_1234
|
|
91
127
|
test/fixture/purpose/ca/ca_config.rb
|
|
92
|
-
test/fixture/purpose/ca/
|
|
128
|
+
test/fixture/purpose/ca/cacert.pem
|
|
93
129
|
test/fixture/purpose/ca/private
|
|
94
|
-
test/fixture/purpose/ca/newcerts
|
|
95
|
-
test/fixture/purpose/ca/newcerts/3_cert.pem
|
|
130
|
+
test/fixture/purpose/ca/newcerts
|
|
96
131
|
test/fixture/purpose/ca/private/cakeypair.pem
|
|
132
|
+
test/fixture/purpose/ca/newcerts/4_cert.pem
|
|
133
|
+
test/fixture/purpose/ca/newcerts/3_cert.pem
|
|
134
|
+
test/fixture/purpose/ca/newcerts/2_cert.pem
|
|
135
|
+
test/fixture/purpose/sslclient/csr.pem
|
|
136
|
+
test/fixture/purpose/sslclient/keypair.pem
|
|
137
|
+
test/fixture/purpose/sslclient/sslclient.pem
|
|
97
138
|
test/fixture/purpose/scripts/gen_cert.rb
|
|
98
139
|
test/fixture/purpose/scripts/init_ca.rb
|
|
99
140
|
test/fixture/purpose/scripts/gen_csr.rb
|
|
100
|
-
test/fixture/purpose/sslserver/sslserver.pem
|
|
101
141
|
test/fixture/purpose/sslserver/csr.pem
|
|
102
142
|
test/fixture/purpose/sslserver/keypair.pem
|
|
103
|
-
test/fixture/
|
|
104
|
-
test/
|
|
105
|
-
test/
|
|
106
|
-
test/fixture/ca_path/verisign.pem
|
|
107
|
-
test/fixture/ca_path/72fa7371.0
|
|
143
|
+
test/fixture/purpose/sslserver/sslserver.pem
|
|
144
|
+
test/ruby/ut_eof.rb
|
|
145
|
+
test/ruby/envutil.rb
|
|
108
146
|
test/java/pkcs7_mime_enveloped.message
|
|
109
|
-
test/java/
|
|
147
|
+
test/java/test_java_attribute.rb
|
|
110
148
|
test/java/test_java_pkcs7.rb
|
|
111
|
-
test/java/test_java_bio.rb
|
|
112
|
-
test/java/pkcs7_multipart_signed.message
|
|
113
149
|
test/java/test_java_mime.rb
|
|
114
|
-
test/java/
|
|
150
|
+
test/java/pkcs7_mime_signed.message
|
|
115
151
|
test/java/test_java_smime.rb
|
|
152
|
+
test/java/pkcs7_multipart_signed.message
|
|
153
|
+
test/java/test_java_bio.rb
|
|
154
|
+
test/1.8/test_asn1.rb
|
|
155
|
+
test/1.8/ssl_server.rb
|
|
156
|
+
test/1.8/test_x509ext.rb
|
|
157
|
+
test/1.8/utils.rb
|
|
158
|
+
test/1.8/test_ssl.rb
|
|
159
|
+
test/1.8/test_ec.rb
|
|
160
|
+
test/1.8/test_ns_spki.rb
|
|
161
|
+
test/1.8/test_digest.rb
|
|
162
|
+
test/1.8/test_pair.rb
|
|
163
|
+
test/1.8/test_x509crl.rb
|
|
164
|
+
test/1.8/test_x509store.rb
|
|
165
|
+
test/1.8/test_pkcs7.rb
|
|
166
|
+
test/1.8/test_cipher.rb
|
|
167
|
+
test/1.8/test_pkey_rsa.rb
|
|
168
|
+
test/1.8/test_x509req.rb
|
|
169
|
+
test/1.8/test_x509name.rb
|
|
170
|
+
test/1.8/test_hmac.rb
|
|
171
|
+
test/1.8/test_x509cert.rb
|
|
172
|
+
test/1.8/test_config.rb
|
data/README.txt
CHANGED
data/Rakefile
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
require 'rake'
|
|
2
2
|
require 'rake/testtask'
|
|
3
3
|
|
|
4
|
-
MANIFEST = FileList["Rakefile", "History.txt", "Manifest.txt", "README.txt", "License.txt", "lib/jopenssl.jar", "lib/**/*", "test/**/*"]
|
|
4
|
+
MANIFEST = FileList["Rakefile", "History.txt", "Manifest.txt", "README.txt", "License.txt", "lib/shared/jopenssl.jar", "lib/**/*", "test/**/*"]
|
|
5
5
|
BC_JARS = FileList["build_lib/bc*.jar"]
|
|
6
6
|
|
|
7
7
|
task :default => [:java_compile, :test]
|
|
@@ -38,35 +38,44 @@ task :java_compile do
|
|
|
38
38
|
end
|
|
39
39
|
|
|
40
40
|
sh "javac @pkg/compile_options @pkg/compile_classpath @pkg/compile_sourcefiles"
|
|
41
|
-
sh "jar cf lib/jopenssl.jar -C pkg/classes/ ."
|
|
41
|
+
sh "jar cf lib/shared/jopenssl.jar -C pkg/classes/ ."
|
|
42
42
|
end
|
|
43
|
-
file "lib/jopenssl.jar" => :java_compile
|
|
43
|
+
file "lib/shared/jopenssl.jar" => :java_compile
|
|
44
44
|
|
|
45
45
|
task :more_clean do
|
|
46
|
-
rm_f FileList['lib/jopenssl.jar']
|
|
46
|
+
rm_f FileList['lib/shared/jopenssl.jar']
|
|
47
47
|
end
|
|
48
48
|
task :clean => :more_clean
|
|
49
49
|
|
|
50
50
|
File.open("Manifest.txt", "w") {|f| MANIFEST.each {|n| f.puts n } }
|
|
51
51
|
|
|
52
52
|
begin
|
|
53
|
+
# easiest way to configure ruby_flags for Hoe.
|
|
54
|
+
ENV['RUBY_FLAGS'] ||= [
|
|
55
|
+
(RUBY_VERSION >= '1.9.0' ? '--1.9' : '--1.8'),
|
|
56
|
+
'-w',
|
|
57
|
+
'-Ibuild_lib:lib/shared:lib:test',
|
|
58
|
+
'-J-ea',
|
|
59
|
+
ENV['RUBY_DEBUG']
|
|
60
|
+
].compact.join(' ')
|
|
53
61
|
require 'hoe'
|
|
54
62
|
Hoe.plugin :gemcutter
|
|
55
|
-
Hoe.add_include_dirs('build_lib')
|
|
56
63
|
hoe = Hoe.spec("jruby-openssl") do |p|
|
|
57
|
-
load File.dirname(__FILE__) + "/lib/jopenssl/version.rb"
|
|
64
|
+
load File.dirname(__FILE__) + "/lib/shared/jopenssl/version.rb"
|
|
58
65
|
p.version = Jopenssl::Version::VERSION
|
|
59
66
|
p.rubyforge_name = "jruby-extras"
|
|
60
|
-
p.url = "
|
|
67
|
+
p.url = "https://github.com/jruby/jruby-ossl"
|
|
61
68
|
p.author = "Ola Bini and JRuby contributors"
|
|
62
69
|
p.email = "ola.bini@gmail.com"
|
|
63
70
|
p.summary = "OpenSSL add-on for JRuby"
|
|
64
71
|
p.changes = p.paragraphs_of('History.txt', 0..1).join("\n\n")
|
|
65
72
|
p.description = p.paragraphs_of('README.txt', 3...4).join("\n\n")
|
|
66
73
|
p.test_globs = ENV["TEST"] || ["test/test_all.rb"]
|
|
67
|
-
p.extra_deps << ['bouncy-castle-java', '>=
|
|
74
|
+
p.extra_deps << ['bouncy-castle-java', '>= 1.5.0146.1']
|
|
68
75
|
end
|
|
69
76
|
hoe.spec.dependencies.delete_if { |dep| dep.name == "hoe" }
|
|
77
|
+
# Either lib/1.8 or lib/1.9 is added to $LOAD_PATH dynamically.
|
|
78
|
+
hoe.spec.require_paths = ['lib/shared']
|
|
70
79
|
|
|
71
80
|
task :gemspec do
|
|
72
81
|
File.open("#{hoe.name}.gemspec", "w") {|f| f << hoe.spec.to_ruby }
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
(See the file 'LICENCE'.)
|
|
12
12
|
|
|
13
13
|
= Version
|
|
14
|
-
$Id: bn.rb
|
|
14
|
+
$Id: bn.rb 31657 2011-05-20 22:25:35Z shyouhei $
|
|
15
15
|
=end
|
|
16
16
|
|
|
17
17
|
##
|
|
@@ -29,7 +29,7 @@ end # OpenSSL
|
|
|
29
29
|
#
|
|
30
30
|
class Integer
|
|
31
31
|
def to_bn
|
|
32
|
-
OpenSSL::BN::new(self)
|
|
32
|
+
OpenSSL::BN::new(self.to_s(16), 16)
|
|
33
33
|
end
|
|
34
34
|
end # Integer
|
|
35
35
|
|
|
@@ -11,9 +11,10 @@
|
|
|
11
11
|
(See the file 'LICENCE'.)
|
|
12
12
|
|
|
13
13
|
= Version
|
|
14
|
-
$Id: buffering.rb
|
|
14
|
+
$Id: buffering.rb 28004 2010-05-24 23:58:49Z shyouhei $
|
|
15
15
|
=end
|
|
16
16
|
|
|
17
|
+
module OpenSSL
|
|
17
18
|
module Buffering
|
|
18
19
|
include Enumerable
|
|
19
20
|
attr_accessor :sync
|
|
@@ -237,3 +238,4 @@ module Buffering
|
|
|
237
238
|
sysclose
|
|
238
239
|
end
|
|
239
240
|
end
|
|
241
|
+
end
|
|
File without changes
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
(See the file 'LICENCE'.)
|
|
12
12
|
|
|
13
13
|
= Version
|
|
14
|
-
$Id: digest.rb
|
|
14
|
+
$Id: digest.rb 28004 2010-05-24 23:58:49Z shyouhei $
|
|
15
15
|
=end
|
|
16
16
|
|
|
17
17
|
##
|
|
@@ -40,7 +40,7 @@ module OpenSSL
|
|
|
40
40
|
super(name, data.first)
|
|
41
41
|
}
|
|
42
42
|
}
|
|
43
|
-
singleton = (class <<klass; self; end)
|
|
43
|
+
singleton = (class << klass; self; end)
|
|
44
44
|
singleton.class_eval{
|
|
45
45
|
define_method(:digest){|data| Digest.digest(name, data) }
|
|
46
46
|
define_method(:hexdigest){|data| Digest.hexdigest(name, data) }
|
|
File without changes
|
|
@@ -11,10 +11,9 @@
|
|
|
11
11
|
(See the file 'LICENCE'.)
|
|
12
12
|
|
|
13
13
|
= Version
|
|
14
|
-
$Id
|
|
14
|
+
$Id$
|
|
15
15
|
=end
|
|
16
16
|
|
|
17
|
-
require "openssl"
|
|
18
17
|
require "openssl/buffering"
|
|
19
18
|
require "fcntl"
|
|
20
19
|
|
|
@@ -36,6 +35,7 @@ module OpenSSL
|
|
|
36
35
|
|
|
37
36
|
def set_params(params={})
|
|
38
37
|
params = DEFAULT_PARAMS.merge(params)
|
|
38
|
+
# ssl_version need to be set at first.
|
|
39
39
|
self.ssl_version = params.delete(:ssl_version)
|
|
40
40
|
params.each{|name, value| self.__send__("#{name}=", value) }
|
|
41
41
|
if self.verify_mode != OpenSSL::SSL::VERIFY_NONE
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
require 'openssl'
|
|
@@ -11,11 +11,9 @@
|
|
|
11
11
|
(See the file 'LICENCE'.)
|
|
12
12
|
|
|
13
13
|
= Version
|
|
14
|
-
$Id
|
|
14
|
+
$Id$
|
|
15
15
|
=end
|
|
16
16
|
|
|
17
|
-
require "openssl"
|
|
18
|
-
|
|
19
17
|
module OpenSSL
|
|
20
18
|
module X509
|
|
21
19
|
class ExtensionFactory
|
|
@@ -28,7 +26,7 @@ module OpenSSL
|
|
|
28
26
|
end
|
|
29
27
|
|
|
30
28
|
def create_ext_from_array(ary)
|
|
31
|
-
raise ExtensionError, "unexpected array form" if ary.size > 3
|
|
29
|
+
raise ExtensionError, "unexpected array form" if ary.size > 3
|
|
32
30
|
create_ext(ary[0], ary[1], ary[2])
|
|
33
31
|
end
|
|
34
32
|
|
|
@@ -38,12 +36,12 @@ module OpenSSL
|
|
|
38
36
|
value.strip!
|
|
39
37
|
create_ext(oid, value)
|
|
40
38
|
end
|
|
41
|
-
|
|
39
|
+
|
|
42
40
|
def create_ext_from_hash(hash)
|
|
43
41
|
create_ext(hash["oid"], hash["value"], hash["critical"])
|
|
44
42
|
end
|
|
45
43
|
end
|
|
46
|
-
|
|
44
|
+
|
|
47
45
|
class Extension
|
|
48
46
|
def to_s # "oid = critical, value"
|
|
49
47
|
str = self.oid
|
|
@@ -51,7 +49,7 @@ module OpenSSL
|
|
|
51
49
|
str << "critical, " if self.critical?
|
|
52
50
|
str << self.value.gsub(/\n/, ", ")
|
|
53
51
|
end
|
|
54
|
-
|
|
52
|
+
|
|
55
53
|
def to_h # {"oid"=>sn|ln, "value"=>value, "critical"=>true|false}
|
|
56
54
|
{"oid"=>self.oid,"value"=>self.value,"critical"=>self.critical?}
|
|
57
55
|
end
|
|
@@ -82,7 +80,8 @@ module OpenSSL
|
|
|
82
80
|
|
|
83
81
|
def expand_pair(str)
|
|
84
82
|
return nil unless str
|
|
85
|
-
return str.gsub(Pair){
|
|
83
|
+
return str.gsub(Pair){
|
|
84
|
+
pair = $&
|
|
86
85
|
case pair.size
|
|
87
86
|
when 2 then pair[1,1]
|
|
88
87
|
when 3 then Integer("0x#{pair[1,2]}").chr
|
|
@@ -93,7 +92,7 @@ module OpenSSL
|
|
|
93
92
|
|
|
94
93
|
def expand_hexstring(str)
|
|
95
94
|
return nil unless str
|
|
96
|
-
der = str.gsub(HexPair){
|
|
95
|
+
der = str.gsub(HexPair){$&.to_i(16).chr }
|
|
97
96
|
a1 = OpenSSL::ASN1.decode(der)
|
|
98
97
|
return a1.value, a1.tag
|
|
99
98
|
end
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
require 'openssl'
|
|
@@ -58,19 +58,10 @@ unless defined?(::Digest::Class)
|
|
|
58
58
|
end
|
|
59
59
|
# end of compat chunk.
|
|
60
60
|
|
|
61
|
-
begin
|
|
62
|
-
require 'bouncy-castle-java'
|
|
63
|
-
rescue LoadError
|
|
64
|
-
# runs under restricted mode.
|
|
65
|
-
end
|
|
66
|
-
require 'jopenssl'
|
|
67
|
-
|
|
68
|
-
|
|
69
61
|
require 'openssl/bn'
|
|
70
62
|
require 'openssl/cipher'
|
|
71
63
|
require 'openssl/config'
|
|
72
64
|
require 'openssl/digest'
|
|
73
65
|
require 'openssl/pkcs7'
|
|
74
|
-
require 'openssl/ssl'
|
|
75
|
-
require 'openssl/x509'
|
|
76
|
-
|
|
66
|
+
require 'openssl/ssl-internal'
|
|
67
|
+
require 'openssl/x509-internal'
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
#--
|
|
2
|
+
#
|
|
3
|
+
# $RCSfile$
|
|
4
|
+
#
|
|
5
|
+
# = Ruby-space definitions that completes C-space funcs for BN
|
|
6
|
+
#
|
|
7
|
+
# = Info
|
|
8
|
+
# 'OpenSSL for Ruby 2' project
|
|
9
|
+
# Copyright (C) 2002 Michal Rokos <m.rokos@sh.cvut.cz>
|
|
10
|
+
# All rights reserved.
|
|
11
|
+
#
|
|
12
|
+
# = Licence
|
|
13
|
+
# This program is licenced under the same licence as Ruby.
|
|
14
|
+
# (See the file 'LICENCE'.)
|
|
15
|
+
#
|
|
16
|
+
# = Version
|
|
17
|
+
# $Id: bn.rb 33067 2011-08-25 00:52:10Z drbrain $
|
|
18
|
+
#
|
|
19
|
+
#++
|
|
20
|
+
|
|
21
|
+
module OpenSSL
|
|
22
|
+
class BN
|
|
23
|
+
include Comparable
|
|
24
|
+
end # BN
|
|
25
|
+
end # OpenSSL
|
|
26
|
+
|
|
27
|
+
##
|
|
28
|
+
# Add double dispatch to Integer
|
|
29
|
+
#
|
|
30
|
+
class Integer
|
|
31
|
+
def to_bn
|
|
32
|
+
OpenSSL::BN::new(self.to_s(16), 16)
|
|
33
|
+
end
|
|
34
|
+
end # Integer
|
|
35
|
+
|