X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=crypto%2Fcryptlib.c;h=4eb584c90a5855c7ca643e73889fb079b3dddb86;hb=a3faebd1041576a59bffe01bbd2c68495870ec5e;hp=5da4828f88a2640b68c03811a54de1438cfa2c52;hpb=80340f1fe96f49d9c64ad6486b4b05151e449931;p=oweals%2Fopenssl.git diff --git a/crypto/cryptlib.c b/crypto/cryptlib.c index 5da4828f88..4eb584c90a 100644 --- a/crypto/cryptlib.c +++ b/crypto/cryptlib.c @@ -74,7 +74,7 @@ static const char* lock_names[CRYPTO_NUM_LOCKS] = { "<>", "err", - "err_hash", + "ex_data", "x509", "x509_info", "x509_pkey", @@ -90,6 +90,7 @@ static const char* lock_names[CRYPTO_NUM_LOCKS] = "ssl_sess_cert", "ssl", "rand", + "rand2", "debug_malloc", "BIO", "gethostbyname", @@ -102,7 +103,7 @@ static const char* lock_names[CRYPTO_NUM_LOCKS] = "dynlock", "engine", "ui", -#if CRYPTO_NUM_LOCKS != 30 +#if CRYPTO_NUM_LOCKS != 31 # error "Inconsistency between crypto.h and cryptlib.c" #endif }; @@ -397,16 +398,15 @@ void CRYPTO_lock(int mode, int type, const char *file, int line) #endif if (type < 0) { - int i = -type - 1; struct CRYPTO_dynlock_value *pointer - = CRYPTO_get_dynlock_value(i); + = CRYPTO_get_dynlock_value(type); if (pointer && dynlock_lock_callback) { dynlock_lock_callback(mode, pointer, file, line); } - CRYPTO_destroy_dynlockid(i); + CRYPTO_destroy_dynlockid(type); } else if (locking_callback != NULL) @@ -432,7 +432,6 @@ int CRYPTO_add_lock(int *pointer, int amount, int type, const char *file, CRYPTO_get_lock_name(type), file,line); #endif - *pointer=ret; } else {