1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00
ruby--ruby/ext/openssl
rhe e478bb7d79 openssl: support OpenSSL 1.1.0's new multi-threading API
* ext/openssl/extconf.rb: Check absence of CRYPTO_lock() to see if the
  OpenSSL has the new threading API. In OpenSSL <= 1.0.2, an application
  had to set locking callbacks to use OpenSSL in a multi-threaded
  environment. OpenSSL 1.1.0 now finds pthreads or Windows threads so we
  don't need to do something special.
  [ruby-core:75225] [Feature #12324]

  Also check existence of *_up_ref(). Some structures in OpenSSL have
  a reference counter. We used to increment it with CRYPTO_add() which
  is a part of the old API.

* ext/openssl/openssl_missing.h: Implement *_up_ref() if missing.

* ext/openssl/ossl.c: Don't set locking callbacks if unneeded.

* ext/openssl/ossl_pkey.c, ext/openssl/ossl_ssl.c,
  ext/openssl/ossl_x509cert.c, ext/openssl/ossl_x509crl.c,
  ext/openssl/ossl_x509store.c: Use *_up_ref() instead of CRYPTO_add().

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55283 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-06-05 12:46:05 +00:00
..
lib openssl: move SSLSocket#initialize to C extension 2016-05-28 05:00:36 +00:00
depend Update dependencies. 2016-04-11 11:50:00 +00:00
deprecation.rb openssl: drop OpenSSL 0.9.6/0.9.7 support 2016-05-25 08:50:03 +00:00
extconf.rb openssl: support OpenSSL 1.1.0's new multi-threading API 2016-06-05 12:46:05 +00:00
openssl_missing.c openssl: add SSLContext#ecdh_curves= 2016-05-30 09:30:38 +00:00
openssl_missing.h openssl: support OpenSSL 1.1.0's new multi-threading API 2016-06-05 12:46:05 +00:00
ossl.c openssl: support OpenSSL 1.1.0's new multi-threading API 2016-06-05 12:46:05 +00:00
ossl.h openssl: drop OpenSSL 0.9.6/0.9.7 support 2016-05-25 08:50:03 +00:00
ossl_asn1.c ossl_asn1.c: check overflow 2016-06-01 13:39:01 +00:00
ossl_asn1.h openssl: fix the Year 2038 problem 2016-06-01 12:41:15 +00:00
ossl_bio.c prefer rb_syserr_fail 2015-12-23 08:57:48 +00:00
ossl_bio.h * ext/openssl/*: Remove svn commit id macros to make sync easier 2015-09-22 16:12:15 +00:00
ossl_bn.c openssl: avoid deprecated BN_*prime* functions 2016-06-04 02:35:09 +00:00
ossl_bn.h * ext/openssl/*: Remove svn commit id macros to make sync easier 2015-09-22 16:12:15 +00:00
ossl_cipher.c openssl: drop OpenSSL 0.9.6/0.9.7 support 2016-05-25 08:50:03 +00:00
ossl_cipher.h * ext/openssl/*: Remove svn commit id macros to make sync easier 2015-09-22 16:12:15 +00:00
ossl_config.c * ext/openssl/*: Remove svn commit id macros to make sync easier 2015-09-22 16:12:15 +00:00
ossl_config.h * ext/openssl/*: Remove svn commit id macros to make sync easier 2015-09-22 16:12:15 +00:00
ossl_digest.c openssl: use StringValueCStr() where NUL-terminated string is expected 2016-05-23 11:40:07 +00:00
ossl_digest.h * ext/openssl/*: Remove svn commit id macros to make sync easier 2015-09-22 16:12:15 +00:00
ossl_engine.c openssl: drop OpenSSL 0.9.6/0.9.7 support 2016-05-25 08:50:03 +00:00
ossl_engine.h * ext/openssl/*: Remove svn commit id macros to make sync easier 2015-09-22 16:12:15 +00:00
ossl_hmac.c * ext/openssl/*: Remove svn commit id macros to make sync easier 2015-09-22 16:12:15 +00:00
ossl_hmac.h * ext/openssl/*: Remove svn commit id macros to make sync easier 2015-09-22 16:12:15 +00:00
ossl_ns_spki.c openssl: use StringValueCStr() where NUL-terminated string is expected 2016-05-23 11:40:07 +00:00
ossl_ns_spki.h * ext/openssl/*: Remove svn commit id macros to make sync easier 2015-09-22 16:12:15 +00:00
ossl_ocsp.c openssl: drop OpenSSL 0.9.6/0.9.7 support 2016-05-25 08:50:03 +00:00
ossl_ocsp.h openssl: drop OpenSSL 0.9.6/0.9.7 support 2016-05-25 08:50:03 +00:00
ossl_pkcs5.c openssl: drop OpenSSL 0.9.6/0.9.7 support 2016-05-25 08:50:03 +00:00
ossl_pkcs5.h
ossl_pkcs7.c openssl: drop OpenSSL 0.9.6/0.9.7 support 2016-05-25 08:50:03 +00:00
ossl_pkcs7.h * ext/openssl/*: Remove svn commit id macros to make sync easier 2015-09-22 16:12:15 +00:00
ossl_pkcs12.c openssl: use StringValueCStr() where NUL-terminated string is expected 2016-05-23 11:40:07 +00:00
ossl_pkcs12.h * ext/openssl/ossl_pkcs12*: Remove svn commit id macro 2015-09-23 13:23:02 +00:00
ossl_pkey.c openssl: support OpenSSL 1.1.0's new multi-threading API 2016-06-05 12:46:05 +00:00
ossl_pkey.h openssl: drop OpenSSL 0.9.6/0.9.7 support 2016-05-25 08:50:03 +00:00
ossl_pkey_dh.c openssl: avoid NULL dereference in {DH,DSA,RSA}_size() 2016-05-26 05:24:58 +00:00
ossl_pkey_dsa.c openssl: avoid NULL dereference in {DH,DSA,RSA}_size() 2016-05-26 05:24:58 +00:00
ossl_pkey_ec.c openssl: drop OpenSSL 0.9.6/0.9.7 support 2016-05-25 08:50:03 +00:00
ossl_pkey_rsa.c openssl: avoid NULL dereference in {DH,DSA,RSA}_size() 2016-05-26 05:24:58 +00:00
ossl_rand.c openssl: check existence of RAND_pseudo_bytes() 2016-06-05 12:38:34 +00:00
ossl_rand.h * ext/openssl/*: Remove svn commit id macros to make sync easier 2015-09-22 16:12:15 +00:00
ossl_ssl.c openssl: support OpenSSL 1.1.0's new multi-threading API 2016-06-05 12:46:05 +00:00
ossl_ssl.h openssl: move SSLSocket#initialize to C extension 2016-05-28 05:00:36 +00:00
ossl_ssl_session.c openssl: move SSLSocket#initialize to C extension 2016-05-28 05:00:36 +00:00
ossl_version.h * ext/openssl/*: Remove svn commit id macros to make sync easier 2015-09-22 16:12:15 +00:00
ossl_x509.c openssl: fix the Year 2038 problem 2016-06-01 12:41:15 +00:00
ossl_x509.h openssl: fix the Year 2038 problem 2016-06-01 12:41:15 +00:00
ossl_x509attr.c openssl: drop OpenSSL 0.9.6/0.9.7 support 2016-05-25 08:50:03 +00:00
ossl_x509cert.c openssl: support OpenSSL 1.1.0's new multi-threading API 2016-06-05 12:46:05 +00:00
ossl_x509crl.c openssl: support OpenSSL 1.1.0's new multi-threading API 2016-06-05 12:46:05 +00:00
ossl_x509ext.c openssl: drop OpenSSL 0.9.6/0.9.7 support 2016-05-25 08:50:03 +00:00
ossl_x509name.c * ext/openssl/*: Remove svn commit id macros to make sync easier 2015-09-22 16:12:15 +00:00
ossl_x509req.c openssl: clear OpenSSL error queue before return to Ruby 2016-05-18 04:07:47 +00:00
ossl_x509revoked.c openssl: fix the Year 2038 problem 2016-06-01 12:41:15 +00:00
ossl_x509store.c openssl: support OpenSSL 1.1.0's new multi-threading API 2016-06-05 12:46:05 +00:00
ruby_missing.h * ext/openssl/*: Remove svn commit id macros to make sync easier 2015-09-22 16:12:15 +00:00