From a4027a5e2576a0b188330d163b575d6374e51a40 Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Mon, 11 Apr 2011 22:35:26 +0000 Subject: [PATCH] ruby: fix compilation against OpenSSL v1.0.0, thanks russell SVN-Revision: 26599 --- ...dd-option-which-enable-SSLv2-support.patch | 53 +++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 lang/ruby/patches/0001-Add-option-which-enable-SSLv2-support.patch diff --git a/lang/ruby/patches/0001-Add-option-which-enable-SSLv2-support.patch b/lang/ruby/patches/0001-Add-option-which-enable-SSLv2-support.patch new file mode 100644 index 000000000..5591d998e --- /dev/null +++ b/lang/ruby/patches/0001-Add-option-which-enable-SSLv2-support.patch @@ -0,0 +1,53 @@ +From b983e73adf7a7d3fd07fdf493eee51c22881a6e6 Mon Sep 17 00:00:00 2001 +From: Nobuhiro Iwamatsu +Date: Wed, 6 Apr 2011 02:28:09 +0900 +Subject: [PATCH] Add option which enable SSLv2 support + +From openssl 1.0, SSLv2 becomes disable by default. +If you want to use SSLv2 in ruby, you need config with --enable-opensslv2. +The SSLv2 support is disable by default. + +Signed-off-by: Nobuhiro Iwamatsu +--- + ext/openssl/extconf.rb | 8 ++++++++ + ext/openssl/ossl_ssl.c | 2 ++ + 2 files changed, 10 insertions(+), 0 deletions(-) + +diff --git a/ext/openssl/extconf.rb b/ext/openssl/extconf.rb +index b1f2d88..89c6f19 100644 +--- a/ext/openssl/extconf.rb ++++ b/ext/openssl/extconf.rb +@@ -33,6 +33,14 @@ if with_config("debug") or enable_config("debug") + end + end + ++## ++## From openssl 1.0, SSLv2 becomes disable by default. ++## If you want to use SSLv2 in ruby, you need config with --enable-opensslv2. ++## ++if enable_config("opensslv2") ++ $defs << "-DENABLE_OPENSSLV2" ++end ++ + message "=== Checking for system dependent stuff... ===\n" + have_library("nsl", "t_open") + have_library("socket", "socket") +diff --git a/ext/openssl/ossl_ssl.c b/ext/openssl/ossl_ssl.c +index d8951fb..d0c9059 100644 +--- a/ext/openssl/ossl_ssl.c ++++ b/ext/openssl/ossl_ssl.c +@@ -107,9 +107,11 @@ struct { + OSSL_SSL_METHOD_ENTRY(TLSv1), + OSSL_SSL_METHOD_ENTRY(TLSv1_server), + OSSL_SSL_METHOD_ENTRY(TLSv1_client), ++#if defined(ENABLE_OPENSSLV2) + 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), +-- +1.7.4.1 + -- 2.30.2