1
0
mirror of https://git.openwrt.org/feed/packages.git synced 2024-06-15 03:43:53 +02:00
openwrt-packages/net/znc/patches/120-openssl-deprecated.patch
Rosen Penev e0d392f5b7
znc: Update deprecated API patch
ENGINE_cleanup is unavailable when deprecated APIs and ENGINE support are
disabled. The cleanup functions are unnecessary with OpenSSL 1.1.

The getm functions use a faulty if directive. Work around it.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2019-04-02 21:36:05 -07:00

63 lines
1.7 KiB
Diff

--- a/src/Utils.cpp
+++ b/src/Utils.cpp
@@ -29,7 +29,7 @@
#include <openssl/ssl.h>
#include <openssl/bn.h>
#include <openssl/rsa.h>
-#if (OPENSSL_VERSION_NUMBER < 0x10100000L) || (LIBRESSL_VERSION_NUMBER < 0x20700000L)
+#if (OPENSSL_VERSION_NUMBER < 0x10100000L)
#define X509_getm_notBefore X509_get_notBefore
#define X509_getm_notAfter X509_get_notAfter
#endif
--- a/third_party/Csocket/Csocket.cc
+++ b/third_party/Csocket/Csocket.cc
@@ -47,10 +47,16 @@
#include <stdio.h>
#include <openssl/ssl.h>
#include <openssl/conf.h>
-#include <openssl/engine.h>
+#include <openssl/bn.h>
+#include <openssl/dh.h>
+#include <openssl/dsa.h>
+#include <openssl/rsa.h>
#ifndef OPENSSL_NO_COMP
#include <openssl/comp.h>
#endif
+#ifndef OPENSSL_NO_ENGINE
+#include <openssl/engine.h>
+#endif
#define HAVE_ERR_REMOVE_STATE
#ifdef OPENSSL_VERSION_NUMBER
# if OPENSSL_VERSION_NUMBER >= 0x10000000
@@ -583,6 +589,7 @@ bool InitCsocket()
void ShutdownCsocket()
{
#ifdef HAVE_LIBSSL
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
#if defined( HAVE_ERR_REMOVE_THREAD_STATE )
ERR_remove_thread_state( NULL );
#elif defined( HAVE_ERR_REMOVE_STATE )
@@ -597,6 +604,7 @@ void ShutdownCsocket()
ERR_free_strings();
EVP_cleanup();
CRYPTO_cleanup_all_ex_data();
+#endif
#endif /* HAVE_LIBSSL */
#ifdef HAVE_C_ARES
#if ARES_VERSION >= CREATE_ARES_VER( 1, 6, 1 )
@@ -611,12 +619,14 @@ void ShutdownCsocket()
#ifdef HAVE_LIBSSL
bool InitSSL( ECompType eCompressionType )
{
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
SSL_load_error_strings();
if( SSL_library_init() != 1 )
{
CS_DEBUG( "SSL_library_init() failed!" );
return( false );
}
+#endif
#ifndef _WIN32
if( access( "/dev/urandom", R_OK ) == 0 )