diff options
author | Kazuki Yamaguchi <k@rhe.jp> | 2016-05-05 14:37:28 +0900 |
---|---|---|
committer | Kazuki Yamaguchi <k@rhe.jp> | 2016-05-05 18:43:52 +0900 |
commit | a4d990483268a28656fa27748089b42743e8f160 (patch) | |
tree | d36f9c1dabbc030f70dde29ca659625b3afad910 | |
parent | 2eea53d8878d74d292b3982159e509729f03f8c7 (diff) | |
download | ruby-a4d990483268a28656fa27748089b42743e8f160.tar.gz |
ext/openssl: setting locking callbacks is no longer needed
These functions are made no-op.
-rw-r--r-- | ext/openssl/extconf.rb | 1 | ||||
-rw-r--r-- | ext/openssl/ossl.c | 4 |
2 files changed, 5 insertions, 0 deletions
diff --git a/ext/openssl/extconf.rb b/ext/openssl/extconf.rb index 7fb88c34a2..b72f605288 100644 --- a/ext/openssl/extconf.rb +++ b/ext/openssl/extconf.rb @@ -100,6 +100,7 @@ have_func("SSL_CTX_set_alpn_select_cb") OpenSSL.check_func_or_macro("SSL_get_server_tmp_key", "openssl/ssl.h") # added in 1.1.0 +have_func("CRYPTO_lock") || $defs.push("-DHAVE_OPENSSL_110_THREADING_API") OpenSSL.check_func("RAND_pseudo_bytes", "openssl/rand.h") # deprecated have_func("X509_STORE_get_ex_data") have_func("X509_STORE_set_ex_data") diff --git a/ext/openssl/ossl.c b/ext/openssl/ossl.c index f1e23fe16f..a115878db3 100644 --- a/ext/openssl/ossl.c +++ b/ext/openssl/ossl.c @@ -460,6 +460,7 @@ ossl_fips_mode_set(VALUE self, VALUE enabled) #endif } +#if !defined(HAVE_OPENSSL_110_THREADING_API) /** * Stores locks needed for OpenSSL thread safety */ @@ -547,6 +548,7 @@ static void Init_ossl_locks(void) CRYPTO_set_dynlock_lock_callback(ossl_dyn_lock_callback); CRYPTO_set_dynlock_destroy_callback(ossl_dyn_destroy_callback); } +#endif /* !HAVE_OPENSSL_110_THREADING_API */ /* * OpenSSL provides SSL, TLS and general purpose cryptography. It wraps the @@ -1147,7 +1149,9 @@ Init_openssl(void) */ ossl_s_to_der = rb_intern("to_der"); +#if !defined(HAVE_OPENSSL_110_THREADING_API) Init_ossl_locks(); +#endif /* * Init components |