From 16dd07c5e09f3fbdc4ad24a001ef112a7ca5fd07 Mon Sep 17 00:00:00 2001 From: Wez Furlong Date: Fri, 10 Sep 2004 11:44:10 +0000 Subject: [PATCH] MFH: fix for Bug #29296 --- ext/openssl/openssl.c | 2 ++ ext/openssl/xp_ssl.c | 6 ++++++ 2 files changed, 8 insertions(+) diff --git a/ext/openssl/openssl.c b/ext/openssl/openssl.c index 002fd47748..bd496b0535 100644 --- a/ext/openssl/openssl.c +++ b/ext/openssl/openssl.c @@ -632,6 +632,8 @@ PHP_MINIT_FUNCTION(openssl) } php_stream_xport_register("ssl", php_openssl_ssl_socket_factory TSRMLS_CC); + php_stream_xport_register("sslv3", php_openssl_ssl_socket_factory TSRMLS_CC); + php_stream_xport_register("sslv2", php_openssl_ssl_socket_factory TSRMLS_CC); php_stream_xport_register("tls", php_openssl_ssl_socket_factory TSRMLS_CC); /* override the default tcp socket provider */ diff --git a/ext/openssl/xp_ssl.c b/ext/openssl/xp_ssl.c index 4171312907..9bb0fad3fe 100644 --- a/ext/openssl/xp_ssl.c +++ b/ext/openssl/xp_ssl.c @@ -691,6 +691,12 @@ php_stream *php_openssl_ssl_socket_factory(const char *proto, long protolen, if (strncmp(proto, "ssl", protolen) == 0) { sslsock->enable_on_connect = 1; sslsock->method = STREAM_CRYPTO_METHOD_SSLv23_CLIENT; + } else if (strncmp(proto, "sslv2", protolen) == 0) { + sslsock->enable_on_connect = 1; + sslsock->method = STREAM_CRYPTO_METHOD_SSLv2_CLIENT; + } else if (strncmp(proto, "sslv3", protolen) == 0) { + sslsock->enable_on_connect = 1; + sslsock->method = STREAM_CRYPTO_METHOD_SSLv3_CLIENT; } else if (strncmp(proto, "tls", protolen) == 0) { sslsock->enable_on_connect = 1; sslsock->method = STREAM_CRYPTO_METHOD_TLS_CLIENT; -- 2.50.1