Allow the CHIL engine to load even if dynamic locks aren't registered.
authorGeoff Thorpe <geoff@openssl.org>
Wed, 19 Nov 2008 14:08:06 +0000 (14:08 +0000)
committerGeoff Thorpe <geoff@openssl.org>
Wed, 19 Nov 2008 14:08:06 +0000 (14:08 +0000)
Submitted by: Sander Temme

CHANGES
engines/e_chil.c
engines/e_chil_err.c
engines/e_chil_err.h

diff --git a/CHANGES b/CHANGES
index e41e85277617b3af91ced793a9b9f9e2506ff664..2b5593fb3e67d69debd6b5d591378e2364255c9f 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -4,6 +4,11 @@
 
  Changes between 0.9.8i and 0.9.8j  [xx XXX xxxx]
 
+  *) Allow the CHIL engine to be loaded, whether the application is
+     multithreaded or not. (This does not release the developer from the
+     obligation to set up the dynamic locking callbacks.)
+     [Sander Temme <sander@temme.net>]
+
   *) Update Configure code and WIN32 build scripts to support experimental
      code. This is surrounded by OPENSSL_EXPERIMENTAL_FOO and not compiled
      in by default. Using the configuration option "enable-experimental-foo"
index b89f3e955cf9902217e9beb5c3b11bb907d641b0..d659b01eadc88610ea1e79f5757ee893748980fa 100644 (file)
@@ -589,12 +589,6 @@ static int hwcrhk_init(ENGINE *e)
                        hwcrhk_globals.mutex_release = hwcrhk_mutex_unlock;
                        hwcrhk_globals.mutex_destroy = hwcrhk_mutex_destroy;
                        }
-               else if (CRYPTO_get_locking_callback() != NULL)
-                       {
-                       HWCRHKerr(HWCRHK_F_HWCRHK_INIT,HWCRHK_R_LOCKING_MISSING);
-                       ERR_add_error_data(1,"You HAVE to add dynamic locking callbacks via CRYPTO_set_dynlock_{create,lock,destroy}_callback()");
-                       goto err;
-                       }
                }
 
        /* Try and get a context - if not, we may have a DSO but no
index 3fec95a272bbf3e30e0fb3e02da508ab99e99383..c5983b2fd50076a4f8abc0753fa0ca5988e06079 100644 (file)
@@ -90,7 +90,6 @@ static ERR_STRING_DATA HWCRHK_str_reasons[]=
 {ERR_REASON(HWCRHK_R_CHIL_ERROR)         ,"chil error"},
 {ERR_REASON(HWCRHK_R_CTRL_COMMAND_NOT_IMPLEMENTED),"ctrl command not implemented"},
 {ERR_REASON(HWCRHK_R_DSO_FAILURE)        ,"dso failure"},
-{ERR_REASON(HWCRHK_R_LOCKING_MISSING)    ,"locking missing"},
 {ERR_REASON(HWCRHK_R_MISSING_KEY_COMPONENTS),"missing key components"},
 {ERR_REASON(HWCRHK_R_NOT_INITIALISED)    ,"not initialised"},
 {ERR_REASON(HWCRHK_R_NOT_LOADED)         ,"not loaded"},
index 051854950a1d02eb7093d80f9776ca1ea48fadbe..3c42a02393d5f1391f27e7e4448c5192e6ed6db3 100644 (file)
@@ -88,7 +88,6 @@ static void ERR_HWCRHK_error(int function, int reason, char *file, int line);
 #define HWCRHK_R_CHIL_ERROR                             102
 #define HWCRHK_R_CTRL_COMMAND_NOT_IMPLEMENTED           103
 #define HWCRHK_R_DSO_FAILURE                            104
-#define HWCRHK_R_LOCKING_MISSING                        114
 #define HWCRHK_R_MISSING_KEY_COMPONENTS                         105
 #define HWCRHK_R_NOT_INITIALISED                        106
 #define HWCRHK_R_NOT_LOADED                             107