aboutsummaryrefslogtreecommitdiff
path: root/crypto/context.c
diff options
context:
space:
mode:
Diffstat (limited to 'crypto/context.c')
-rw-r--r--crypto/context.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/crypto/context.c b/crypto/context.c
index 852f9dd..6c088e6 100644
--- a/crypto/context.c
+++ b/crypto/context.c
@@ -11,6 +11,7 @@
#include <openssl/conf.h>
#include "internal/thread_once.h"
#include "internal/property.h"
+#include "internal/core.h"
struct ossl_lib_ctx_onfree_list_st {
ossl_lib_ctx_onfree_fn *fn;
@@ -39,6 +40,21 @@ struct ossl_lib_ctx_st {
struct ossl_lib_ctx_onfree_list_st *onfreelist;
};
+int ossl_lib_ctx_write_lock(OSSL_LIB_CTX *ctx)
+{
+ return CRYPTO_THREAD_write_lock(ossl_lib_ctx_get_concrete(ctx)->lock);
+}
+
+int ossl_lib_ctx_read_lock(OSSL_LIB_CTX *ctx)
+{
+ return CRYPTO_THREAD_read_lock(ossl_lib_ctx_get_concrete(ctx)->lock);
+}
+
+int ossl_lib_ctx_unlock(OSSL_LIB_CTX *ctx)
+{
+ return CRYPTO_THREAD_unlock(ossl_lib_ctx_get_concrete(ctx)->lock);
+}
+
static int context_init(OSSL_LIB_CTX *ctx)
{
size_t i;