wget/wget-1.12-nosslv2.patch

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