aboutsummaryrefslogtreecommitdiffstats
path: root/patches/ruby/r31346-r31528-SSLv2-182.patch
diff options
context:
space:
mode:
Diffstat (limited to 'patches/ruby/r31346-r31528-SSLv2-182.patch')
-rw-r--r--patches/ruby/r31346-r31528-SSLv2-182.patch31
1 files changed, 31 insertions, 0 deletions
diff --git a/patches/ruby/r31346-r31528-SSLv2-182.patch b/patches/ruby/r31346-r31528-SSLv2-182.patch
new file mode 100644
index 0000000..09386e6
--- /dev/null
+++ b/patches/ruby/r31346-r31528-SSLv2-182.patch
@@ -0,0 +1,31 @@
+diff --git a/ext/openssl/extconf.rb b/ext/openssl/extconf.rb
+index b1f2d88..1bd5a07 100644
+--- a/ext/openssl/extconf.rb
++++ b/ext/openssl/extconf.rb
+@@ -100,6 +100,9 @@
+ have_func("X509_CRL_sort")
+ have_func("X509_STORE_get_ex_data")
+ have_func("X509_STORE_set_ex_data")
++have_func("SSLv2_method")
++have_func("SSLv2_server_method")
++have_func("SSLv2_client_method")
+ if try_compile("#define FOO(a, ...) foo(a, ##__VA_ARGS__)\n int x(){FOO(1);FOO(1,2);FOO(1,2,3);}\n")
+ $defs.push("-DHAVE_VA_ARGS_MACRO")
+ end
+diff --git a/ext/openssl/ossl_ssl.c b/ext/openssl/ossl_ssl.c
+index d8951fb..d750e95 100644
+--- a/ext/openssl/ossl_ssl.c
++++ b/ext/openssl/ossl_ssl.c
+@@ -107,9 +107,12 @@ struct {
+ OSSL_SSL_METHOD_ENTRY(TLSv1),
+ OSSL_SSL_METHOD_ENTRY(TLSv1_server),
+ OSSL_SSL_METHOD_ENTRY(TLSv1_client),
++#if defined(HAVE_SSLV2_METHOD) && defined(HAVE_SSLV2_SERVER_METHOD) && \
++ defined(HAVE_SSLV2_CLIENT_METHOD)
+ OSSL_SSL_METHOD_ENTRY(SSLv2),
+ OSSL_SSL_METHOD_ENTRY(SSLv2_server),
+ OSSL_SSL_METHOD_ENTRY(SSLv2_client),
++#endif
+ OSSL_SSL_METHOD_ENTRY(SSLv3),
+ OSSL_SSL_METHOD_ENTRY(SSLv3_server),
+ OSSL_SSL_METHOD_ENTRY(SSLv3_client),