diff options
author | Richard Levitte <levitte@openssl.org> | 2002-12-11 08:56:35 +0000 |
---|---|---|
committer | Richard Levitte <levitte@openssl.org> | 2002-12-11 08:56:35 +0000 |
commit | b9b6e14b4aa61a97d0a459968733cf3d6f9e1e23 (patch) | |
tree | f3bbb0eac1fa842ba957c1a648481000b689e76f /crypto/cryptlib.c | |
parent | 442d42300b754f1aea6f2d903e548bb42bda7649 (diff) |
In CRYPTO_lock(), check that the application cares about locking (provided
callbacks) before attempting to lock.
Diffstat (limited to 'crypto/cryptlib.c')
-rw-r--r-- | crypto/cryptlib.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/crypto/cryptlib.c b/crypto/cryptlib.c index 830ccc9816..fb3e93fe27 100644 --- a/crypto/cryptlib.c +++ b/crypto/cryptlib.c @@ -472,17 +472,17 @@ void CRYPTO_lock(int mode, int type, const char *file, int line) #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) |