diff options
Diffstat (limited to 'patches/ruby/r31346-r31528-SSLv2-182.patch')
-rw-r--r-- | patches/ruby/r31346-r31528-SSLv2-182.patch | 31 |
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), |