View | Details | Raw Unified | Return to bug 226852 | Differences between
and this patch

Collapse All | Expand All

(-)lang/ruby25/files/patch-ext_openssl_extconf.rb (+15 lines)
Line 0 Link Here
1
--- ext/openssl/extconf.rb.orig	2018-04-02 09:57:14 UTC
2
+++ ext/openssl/extconf.rb
3
@@ -122,8 +122,11 @@ OpenSSL.check_func_or_macro("SSL_get_ser
4
 have_func("SSL_is_server")
5
 
6
 # added in 1.1.0
7
+if !have_struct_member("SSL", "ctx", "openssl/ssl.h") ||
8
+    try_static_assert("LIBRESSL_VERSION_NUMBER >= 0x2070000fL", "openssl/opensslv.h")
9
+  $defs.push("-DHAVE_OPAQUE_OPENSSL")
10
+end
11
 have_func("CRYPTO_lock") || $defs.push("-DHAVE_OPENSSL_110_THREADING_API")
12
-have_struct_member("SSL", "ctx", "openssl/ssl.h") || $defs.push("-DHAVE_OPAQUE_OPENSSL")
13
 have_func("BN_GENCB_new")
14
 have_func("BN_GENCB_free")
15
 have_func("BN_GENCB_get_arg")
(-)lang/ruby25/files/patch-ext_openssl_openssl__missing.h (-28 lines)
Lines 1-28 Link Here
1
--- ext/openssl/openssl_missing.h.orig	2018-03-22 19:37:19 UTC
2
+++ ext/openssl/openssl_missing.h
3
@@ -72,6 +72,9 @@ void ossl_HMAC_CTX_free(HMAC_CTX *);
4
 #if !defined(HAVE_X509_STORE_SET_EX_DATA)
5
 #  define X509_STORE_set_ex_data(x, idx, data) \
6
 	CRYPTO_set_ex_data(&(x)->ex_data, (idx), (data))
7
+#endif
8
+
9
+#if !defined(HAVE_X509_STORE_GET_EX_NEW_INDEX)
10
 #  define X509_STORE_get_ex_new_index(l, p, newf, dupf, freef) \
11
 	CRYPTO_get_ex_new_index(CRYPTO_EX_INDEX_X509_STORE, (l), (p), \
12
 				(newf), (dupf), (freef))
13
@@ -145,6 +148,7 @@ void ossl_X509_REQ_get0_signature(const 
14
 #endif
15
 
16
 #if !defined(HAVE_OPAQUE_OPENSSL)
17
+#if defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER < 0x2070000fL
18
 #define IMPL_PKEY_GETTER(_type, _name) \
19
 static inline _type *EVP_PKEY_get0_##_type(EVP_PKEY *pkey) { \
20
 	return pkey->pkey._name; }
21
@@ -196,6 +200,7 @@ IMPL_PKEY_GETTER(EC_KEY, ec)
22
 #undef IMPL_PKEY_GETTER
23
 #undef IMPL_KEY_ACCESSOR2
24
 #undef IMPL_KEY_ACCESSOR3
25
+#endif
26
 #endif /* HAVE_OPAQUE_OPENSSL */
27
 
28
 #if !defined(EVP_CTRL_AEAD_GET_TAG)

Return to bug 226852