summaryrefslogtreecommitdiffstats
path: root/providers/implementations/rands/crngt.c
diff options
context:
space:
mode:
Diffstat (limited to 'providers/implementations/rands/crngt.c')
-rw-r--r--providers/implementations/rands/crngt.c14
1 files changed, 4 insertions, 10 deletions
diff --git a/providers/implementations/rands/crngt.c b/providers/implementations/rands/crngt.c
index 4095994bda..50d4a429da 100644
--- a/providers/implementations/rands/crngt.c
+++ b/providers/implementations/rands/crngt.c
@@ -23,6 +23,7 @@
#include "crypto/rand_pool.h"
#include "drbg_local.h"
#include "prov/seeding.h"
+#include "crypto/context.h"
typedef struct crng_test_global_st {
unsigned char crngt_prev[EVP_MAX_MD_SIZE];
@@ -52,7 +53,7 @@ static int crngt_get_entropy(PROV_CTX *provctx, const EVP_MD *digest,
return 0;
}
-static void rand_crng_ossl_ctx_free(void *vcrngt_glob)
+void ossl_rand_crng_ctx_free(void *vcrngt_glob)
{
CRNG_TEST_GLOBAL *crngt_glob = vcrngt_glob;
@@ -61,7 +62,7 @@ static void rand_crng_ossl_ctx_free(void *vcrngt_glob)
OPENSSL_free(crngt_glob);
}
-static void *rand_crng_ossl_ctx_new(OSSL_LIB_CTX *ctx)
+void *ossl_rand_crng_ctx_new(OSSL_LIB_CTX *ctx)
{
CRNG_TEST_GLOBAL *crngt_glob = OPENSSL_zalloc(sizeof(*crngt_glob));
@@ -82,12 +83,6 @@ static void *rand_crng_ossl_ctx_new(OSSL_LIB_CTX *ctx)
return crngt_glob;
}
-static const OSSL_LIB_CTX_METHOD rand_crng_ossl_ctx_method = {
- OSSL_LIB_CTX_METHOD_DEFAULT_PRIORITY,
- rand_crng_ossl_ctx_new,
- rand_crng_ossl_ctx_free,
-};
-
static int prov_crngt_compare_previous(const unsigned char *prev,
const unsigned char *cur,
size_t sz)
@@ -113,8 +108,7 @@ size_t ossl_crngt_get_entropy(PROV_DRBG *drbg,
int crng_test_pass = 1;
OSSL_LIB_CTX *libctx = ossl_prov_ctx_get0_libctx(drbg->provctx);
CRNG_TEST_GLOBAL *crngt_glob
- = ossl_lib_ctx_get_data(libctx, OSSL_LIB_CTX_RAND_CRNGT_INDEX,
- &rand_crng_ossl_ctx_method);
+ = ossl_lib_ctx_get_data(libctx, OSSL_LIB_CTX_RAND_CRNGT_INDEX);
OSSL_CALLBACK *stcb = NULL;
void *stcbarg = NULL;
OSSL_SELF_TEST *st = NULL;