68 lines
1.8 KiB
Diff
68 lines
1.8 KiB
Diff
|
--- src/init.c.orig
|
||
|
+++ src/init.c
|
||
|
@@ -1331,7 +1331,9 @@ cmd_spec_secure_protocol (const char *co
|
||
|
{
|
||
|
static const struct decode_item choices[] = {
|
||
|
{ "auto", secure_protocol_auto },
|
||
|
+#ifndef OPENSSL_NO_SSL2
|
||
|
{ "sslv2", secure_protocol_sslv2 },
|
||
|
+#endif
|
||
|
{ "sslv3", secure_protocol_sslv3 },
|
||
|
{ "tlsv1", secure_protocol_tlsv1 },
|
||
|
};
|
||
|
--- src/openssl.c.orig
|
||
|
+++ src/openssl.c
|
||
|
@@ -42,6 +42,7 @@ as that of the covered work. */
|
||
|
#include <openssl/x509.h>
|
||
|
#include <openssl/err.h>
|
||
|
#include <openssl/rand.h>
|
||
|
+#include <openssl/engine.h>
|
||
|
|
||
|
#include "utils.h"
|
||
|
#include "connect.h"
|
||
|
@@ -178,15 +179,21 @@ ssl_init ()
|
||
|
SSL_load_error_strings ();
|
||
|
SSLeay_add_all_algorithms ();
|
||
|
SSLeay_add_ssl_algorithms ();
|
||
|
+/* Load all bundled ENGINEs into memory and make them visible */
|
||
|
+ ENGINE_load_builtin_engines();
|
||
|
+/* Register all of them for every algorithm they collectively implement */
|
||
|
+ ENGINE_register_all_complete();
|
||
|
|
||
|
switch (opt.secure_protocol)
|
||
|
{
|
||
|
case secure_protocol_auto:
|
||
|
meth = SSLv23_client_method ();
|
||
|
break;
|
||
|
+#ifndef OPENSSL_NO_SSL2
|
||
|
case secure_protocol_sslv2:
|
||
|
meth = SSLv2_client_method ();
|
||
|
break;
|
||
|
+#endif
|
||
|
case secure_protocol_sslv3:
|
||
|
meth = SSLv3_client_method ();
|
||
|
break;
|
||
|
--- src/options.h.orig
|
||
|
+++ src/options.h
|
||
|
@@ -171,7 +171,9 @@ struct options
|
||
|
#ifdef HAVE_SSL
|
||
|
enum {
|
||
|
secure_protocol_auto,
|
||
|
+#ifndef OPENSSL_NO_SSL2
|
||
|
secure_protocol_sslv2,
|
||
|
+#endif
|
||
|
secure_protocol_sslv3,
|
||
|
secure_protocol_tlsv1
|
||
|
} secure_protocol; /* type of secure protocol to use. */
|
||
|
--- src/iri.c.orig
|
||
|
+++ src/iri.c
|
||
|
@@ -114,7 +114,7 @@ check_encoding_name (char *encoding)
|
||
|
static bool
|
||
|
open_locale_to_utf8 (void)
|
||
|
{
|
||
|
-
|
||
|
+ return true;
|
||
|
}
|
||
|
|
||
|
/* Try converting string str from locale to UTF-8. Return a new string
|