2
0
mirror of https://gitlab.isc.org/isc-projects/bind9 synced 2025-08-31 06:25:31 +00:00

1395. [port] OpenSSL 0.9.7 defines CRYPTO_LOCK_ENGINE but doesn't

have a working implementation.  [RT #4079]
This commit is contained in:
Mark Andrews
2002-10-31 04:35:02 +00:00
parent 440edeebf9
commit 2ffb3eb384
2 changed files with 13 additions and 6 deletions

View File

@@ -1,3 +1,6 @@
1395. [port] OpenSSL 0.9.7 defines CRYPTO_LOCK_ENGINE but doesn't
have a working implementation. [RT #4079]
1394. [func] It is now possible to check if a particular element is 1394. [func] It is now possible to check if a particular element is
in a acl. Remove duplicate entries from the localnets in a acl. Remove duplicate entries from the localnets
acl. acl.

View File

@@ -19,7 +19,7 @@
/* /*
* Principal Author: Brian Wellington * Principal Author: Brian Wellington
* $Id: openssl_link.c,v 1.50 2002/03/19 04:30:53 marka Exp $ * $Id: openssl_link.c,v 1.51 2002/10/31 04:35:02 marka Exp $
*/ */
#ifdef OPENSSL #ifdef OPENSSL
@@ -40,7 +40,11 @@
#include <openssl/rand.h> #include <openssl/rand.h>
#include <openssl/crypto.h> #include <openssl/crypto.h>
#ifdef CRYPTO_LOCK_ENGINE #if defined(CRYPTO_LOCK_ENGINE) && (OPENSSL_VERSION_NUMBER < 0x00907000L)
#define USE_ENGINE 1
#endif
#ifdef USE_ENGINE
#include <openssl/engine.h> #include <openssl/engine.h>
#endif #endif
@@ -48,7 +52,7 @@ static RAND_METHOD *rm = NULL;
static isc_mutex_t *locks = NULL; static isc_mutex_t *locks = NULL;
static int nlocks; static int nlocks;
#ifdef CRYPTO_LOCK_ENGINE #ifdef USE_ENGINE
static ENGINE *e; static ENGINE *e;
#endif #endif
@@ -150,7 +154,7 @@ dst__openssl_init() {
rm->add = entropy_add; rm->add = entropy_add;
rm->pseudorand = entropy_getpseudo; rm->pseudorand = entropy_getpseudo;
rm->status = NULL; rm->status = NULL;
#ifdef CRYPTO_LOCK_ENGINE #ifdef USE_ENGINE
e = ENGINE_new(); e = ENGINE_new();
if (e == NULL) { if (e == NULL) {
result = ISC_R_NOMEMORY; result = ISC_R_NOMEMORY;
@@ -163,7 +167,7 @@ dst__openssl_init() {
#endif #endif
return (ISC_R_SUCCESS); return (ISC_R_SUCCESS);
#ifdef CRYPTO_LOCK_ENGINE #ifdef USE_ENGINE
cleanup_rm: cleanup_rm:
mem_free(rm); mem_free(rm);
#endif #endif
@@ -177,7 +181,7 @@ dst__openssl_init() {
void void
dst__openssl_destroy() { dst__openssl_destroy() {
ERR_clear_error(); ERR_clear_error();
#ifdef CRYPTO_LOCK_ENGINE #ifdef USE_ENGINE
if (e != NULL) if (e != NULL)
ENGINE_free(e); ENGINE_free(e);
#endif #endif