mirror of
https://github.com/isc-projects/bind9.git
synced 2026-06-12 15:30:00 -04:00
4676. [cleanup] Allow BIND to be built using OpenSSL 1.0.X with
deprecated functions removed. [RT #45706]
(cherry picked from commit cbc80a42d3)
This commit is contained in:
parent
bcd441c112
commit
02cf40b87f
2 changed files with 21 additions and 2 deletions
3
CHANGES
3
CHANGES
|
|
@ -1,3 +1,6 @@
|
|||
4676. [cleanup] Allow BIND to be built using OpenSSL 1.0.X with
|
||||
deprecated functions removed. [RT #45706]
|
||||
|
||||
4675. [cleanup] Don't use C++ keyword class. [RT #45726]
|
||||
|
||||
4673. [port] Silence GCC 7 warnings. [RT #45592]
|
||||
|
|
|
|||
|
|
@ -112,7 +112,7 @@ entropy_add(const void *buf, int num, double entropy) {
|
|||
}
|
||||
#endif
|
||||
|
||||
#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
|
||||
#if OPENSSL_VERSION_NUMBER >= 0x10000000L && OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
|
||||
static void
|
||||
lock_callback(int mode, int type, const char *file, int line) {
|
||||
UNUSED(file);
|
||||
|
|
@ -122,7 +122,9 @@ lock_callback(int mode, int type, const char *file, int line) {
|
|||
else
|
||||
UNLOCK(&locks[type]);
|
||||
}
|
||||
#endif
|
||||
|
||||
#if OPENSSL_VERSION_NUMBER < 0x10000000L
|
||||
static unsigned long
|
||||
id_callback(void) {
|
||||
return ((unsigned long)isc_thread_self());
|
||||
|
|
@ -186,6 +188,14 @@ mem_realloc(void *ptr, size_t size FLARG) {
|
|||
#endif
|
||||
}
|
||||
|
||||
#if OPENSSL_VERSION_NUMBER >= 0x10000000L && OPENSSL_VERSION_NUMBER < 0x10100000L
|
||||
static void
|
||||
_set_thread_id(CRYPTO_THREADID *id)
|
||||
{
|
||||
CRYPTO_THREADID_set_numeric(id, (unsigned long)pthread_self());
|
||||
}
|
||||
#endif
|
||||
|
||||
isc_result_t
|
||||
dst__openssl_init(const char *engine) {
|
||||
isc_result_t result;
|
||||
|
|
@ -211,7 +221,11 @@ dst__openssl_init(const char *engine) {
|
|||
if (result != ISC_R_SUCCESS)
|
||||
goto cleanup_mutexalloc;
|
||||
CRYPTO_set_locking_callback(lock_callback);
|
||||
# if OPENSSL_VERSION_NUMBER >= 0x10000000L
|
||||
CRYPTO_THREADID_set_callback(_set_thread_id);
|
||||
# else
|
||||
CRYPTO_set_id_callback(id_callback);
|
||||
# endif
|
||||
|
||||
ERR_load_crypto_strings();
|
||||
#endif
|
||||
|
|
@ -332,7 +346,9 @@ dst__openssl_destroy(void) {
|
|||
CRYPTO_cleanup_all_ex_data();
|
||||
#endif
|
||||
ERR_clear_error();
|
||||
#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
|
||||
#if OPENSSL_VERSION_NUMBER >= 0x10000000L && OPENSSL_VERSION_NUMBER < 0x10100000L
|
||||
ERR_remove_thread_state(NULL);
|
||||
#elif OPENSSL_VERSION_NUMBER < 0x10000000L || defined(LIBRESSL_VERSION_NUMBER)
|
||||
ERR_remove_state(0);
|
||||
#endif
|
||||
ERR_free_strings();
|
||||
|
|
|
|||
Loading…
Reference in a new issue