Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/openssl/openssl.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/ssl
diff options
context:
space:
mode:
authorRichard Levitte <levitte@openssl.org>2002-12-16 09:06:06 +0300
committerRichard Levitte <levitte@openssl.org>2002-12-16 09:06:06 +0300
commit1f1a32541fc412b991b457d6548912e7bcac5d59 (patch)
tree699e99f8379f81716ba4365c32f463d0befd54d8 /ssl
parent0465313e704a3731cfb7ea8336412f02a5df4cf9 (diff)
Protect loading routines with a lock.
PR: 373
Diffstat (limited to 'ssl')
-rw-r--r--ssl/ssl_ciph.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/ssl/ssl_ciph.c b/ssl/ssl_ciph.c
index 37f58886a6..c72be89e9a 100644
--- a/ssl/ssl_ciph.c
+++ b/ssl/ssl_ciph.c
@@ -751,7 +751,12 @@ STACK_OF(SSL_CIPHER) *ssl_create_cipher_list(const SSL_METHOD *ssl_method,
*/
if (rule_str == NULL) return(NULL);
- if (init_ciphers) load_ciphers();
+ if (init_ciphers)
+ {
+ CRYPTO_w_lock(CRYPTO_LOCK_SSL);
+ if (init_ciphers) load_ciphers();
+ CRYPTO_w_unlock(CRYPTO_LOCK_SSL);
+ }
/*
* To reduce the work to do we only want to process the compiled