/* crypto/cryptlib.c */
/* ====================================================================
- * Copyright (c) 1998-2002 The OpenSSL Project. All rights reserved.
+ * Copyright (c) 1998-2003 The OpenSSL Project. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* SUN MICROSYSTEMS, INC., and contributed to the OpenSSL project.
*/
-#include <stdio.h>
-#include <string.h>
#include "cryptlib.h"
-#include <openssl/crypto.h>
#include <openssl/safestack.h>
#if defined(OPENSSL_SYS_WIN32) || defined(OPENSSL_SYS_WIN16)
"ec",
"ecdh",
"bn",
-#if CRYPTO_NUM_LOCKS != 36
+ "ec_pre_comp",
+ "store",
+ "comp",
+#if CRYPTO_NUM_LOCKS != 39
# error "Inconsistency between crypto.h and cryptlib.c"
#endif
};
#endif
if (type < 0)
{
- struct CRYPTO_dynlock_value *pointer
- = CRYPTO_get_dynlock_value(type);
+ if (dynlock_lock_callback != NULL)
+ {
+ struct CRYPTO_dynlock_value *pointer
+ = CRYPTO_get_dynlock_value(type);
- OPENSSL_assert(pointer != NULL);
+ OPENSSL_assert(pointer != NULL);
- if (dynlock_lock_callback)
- {
dynlock_lock_callback(mode, pointer, file, line);
- }
- CRYPTO_destroy_dynlockid(type);
+ CRYPTO_destroy_dynlockid(type);
+ }
}
else
if (locking_callback != NULL)