--- /dev/null
+--- a/openssl.c
++++ b/openssl.c
+@@ -216,11 +216,17 @@ ssl_select_method(const char *uhp)
+
+ cp = ssl_method_string(uhp);
+ if (cp != NULL) {
++#ifndef OPENSSL_NO_SSL2
+ if (equal(cp, "ssl2"))
+ method = SSLv2_client_method();
+- else if (equal(cp, "ssl3"))
++ else
++#endif
++#ifndef OPENSSL_NO_SSL3
++ if (equal(cp, "ssl3"))
+ method = SSLv3_client_method();
+- else if (equal(cp, "tls1"))
++ else
++#endif
++ if (equal(cp, "tls1"))
+ method = TLSv1_client_method();
+ else {
+ fprintf(stderr, catgets(catd, CATSET, 244,
+++ /dev/null
---- a/openssl.c
-+++ b/openssl.c
-@@ -216,9 +216,12 @@ ssl_select_method(const char *uhp)
-
- cp = ssl_method_string(uhp);
- if (cp != NULL) {
-+#ifndef OPENSSL_NO_SSL2
- if (equal(cp, "ssl2"))
- method = SSLv2_client_method();
-- else if (equal(cp, "ssl3"))
-+ else
-+#endif
-+ if (equal(cp, "ssl3"))
- method = SSLv3_client_method();
- else if (equal(cp, "tls1"))
- method = TLSv1_client_method();