commit d83c299eba8010204b3fe0760b1372c7564889fe
parent 9bfe4ed6dd666bb276e35b6e5c8c3de0c218bce0
Author: George Kadianakis <desnacked@riseup.net>
Date: Thu, 14 Feb 2019 18:00:05 +0200
Merge branch 'tor-github/pr/689' into maint-0.3.5
Diffstat:
7 files changed, 15 insertions(+), 2 deletions(-)
diff --git a/changes/ticket29026 b/changes/ticket29026
@@ -0,0 +1,4 @@
+ o Minor features (compilation):
+ - Compile correctly when OpenSSL is built with engine support
+ disabled, or with deprecated APIs disabled. Closes ticket
+ 29026. Patches from "Mangix".
diff --git a/src/lib/crypt_ops/aes_openssl.c b/src/lib/crypt_ops/aes_openssl.c
@@ -43,7 +43,7 @@ ENABLE_GCC_WARNING(redundant-decls)
#include "lib/log/log.h"
#include "lib/ctime/di_ops.h"
-#ifdef ANDROID
+#ifdef OPENSSL_NO_ENGINE
/* Android's OpenSSL seems to have removed all of its Engine support. */
#define DISABLE_ENGINES
#endif
diff --git a/src/lib/crypt_ops/crypto_hkdf.c b/src/lib/crypt_ops/crypto_hkdf.c
@@ -18,6 +18,7 @@
#include "lib/log/util_bug.h"
#ifdef ENABLE_OPENSSL
+#include <openssl/evp.h>
#include <openssl/opensslv.h>
#if defined(HAVE_ERR_LOAD_KDF_STRINGS)
diff --git a/src/lib/crypt_ops/crypto_openssl_mgt.h b/src/lib/crypt_ops/crypto_openssl_mgt.h
@@ -50,7 +50,7 @@
#define OPENSSL_V_SERIES(a,b,c) \
OPENSSL_VER((a),(b),(c),0,0)
-#ifdef ANDROID
+#ifdef OPENSSL_NO_ENGINE
/* Android's OpenSSL seems to have removed all of its Engine support. */
#define DISABLE_ENGINES
#endif
diff --git a/src/lib/crypt_ops/crypto_rand.c b/src/lib/crypt_ops/crypto_rand.c
@@ -45,6 +45,7 @@
#ifdef ENABLE_OPENSSL
DISABLE_GCC_WARNING(redundant-decls)
#include <openssl/rand.h>
+#include <openssl/sha.h>
ENABLE_GCC_WARNING(redundant-decls)
#endif
diff --git a/src/lib/crypt_ops/crypto_rsa.c b/src/lib/crypt_ops/crypto_rsa.c
@@ -31,6 +31,10 @@
#include <sys/stat.h>
#endif
+#ifdef ENABLE_OPENSSL
+#include <openssl/rsa.h>
+#endif
+
/** Return the number of bytes added by padding method <b>padding</b>.
*/
int
diff --git a/src/lib/tls/x509_openssl.c b/src/lib/tls/x509_openssl.c
@@ -31,7 +31,10 @@ DISABLE_GCC_WARNING(redundant-decls)
#include <openssl/asn1.h>
#include <openssl/bio.h>
#include <openssl/bn.h>
+#include <openssl/evp.h>
+#include <openssl/objects.h>
#include <openssl/rsa.h>
+#include <openssl/x509.h>
ENABLE_GCC_WARNING(redundant-decls)