blob: 1585b8d450acc01363e5d7bbb090747894728168 [file] [log] [blame]
From 6b4dbecbcfe35d36fea264c04c41b338852d4e88 Mon Sep 17 00:00:00 2001
From: Nick Parker <nparker@zetetic.net>
Date: Wed, 1 Mar 2017 15:35:43 -0600
Subject: [PATCH] Guard OpenSSL init and cleanup routines on versions less
than 1.1.0
(cherry picked from commit 1c495b933cee3381f1ea6a70edcbcda1754d7409)
Signed-off-by: Matt Weber <matthew.weber@rockwellcollins.com>
Conflicts:
src/crypto_openssl.c
---
src/crypto_openssl.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/src/crypto_openssl.c b/src/crypto_openssl.c
index 6822325..09bc2a2 100644
--- a/src/crypto_openssl.c
+++ b/src/crypto_openssl.c
@@ -102,7 +102,9 @@ static int sqlcipher_openssl_activate(void *ctx) {
if(openssl_init_count == 0 && openssl_external_init == 0) {
/* if the library was not externally initialized, then should be now */
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
OpenSSL_add_all_algorithms();
+#endif
}
#ifndef SQLCIPHER_OPENSSL_NO_MUTEX_RAND
@@ -131,7 +133,9 @@ static int sqlcipher_openssl_deactivate(void *ctx) {
Note: this code will only be reached if OpensSSL_add_all_algorithms()
is called by SQLCipher internally. This should prevent SQLCipher from
"cleaning up" openssl when it was initialized externally by the program */
+#if OPENSSL_VERSION_NUMBER < 0x10100000L
EVP_cleanup();
+#endif
}
#ifndef SQLCIPHER_OPENSSL_NO_MUTEX_RAND
sqlite3_mutex_free(openssl_rand_mutex);
--
1.9.1