PROV_DRBG
int ossl_drbg_verify_digest(PROV_DRBG *drbg, OSSL_LIB_CTX *libctx,
static unsigned int get_parent_reseed_count(PROV_DRBG *drbg)
PROV_DRBG *drbg = (PROV_DRBG *)vdrbg;
static size_t get_entropy(PROV_DRBG *drbg, unsigned char **pout, int entropy,
static void cleanup_entropy(PROV_DRBG *drbg, unsigned char *out, size_t outlen)
static size_t prov_drbg_get_nonce(PROV_DRBG *drbg, unsigned char **pout,
int ossl_prov_drbg_instantiate(PROV_DRBG *drbg, unsigned int strength,
static int rand_drbg_restart(PROV_DRBG *drbg);
int ossl_prov_drbg_uninstantiate(PROV_DRBG *drbg)
static int ossl_prov_drbg_reseed_unlocked(PROV_DRBG *drbg,
int ossl_prov_drbg_reseed(PROV_DRBG *drbg, int prediction_resistance,
int ossl_prov_drbg_generate(PROV_DRBG *drbg, unsigned char *out, size_t outlen,
static int ossl_drbg_lock_parent(PROV_DRBG *drbg)
static int rand_drbg_restart(PROV_DRBG *drbg)
PROV_DRBG *drbg = vctx;
static void ossl_drbg_unlock_parent(PROV_DRBG *drbg)
PROV_DRBG *ossl_rand_drbg_new(void *provctx, void *parent, const OSSL_DISPATCH *p_dispatch,
int (*dnew)(PROV_DRBG *ctx),
int (*instantiate)(PROV_DRBG *drbg,
int (*uninstantiate)(PROV_DRBG *ctx),
int (*reseed)(PROV_DRBG *drbg, const unsigned char *ent, size_t ent_len,
int (*generate)(PROV_DRBG *, unsigned char *out, size_t outlen,
PROV_DRBG *drbg;
static int get_parent_strength(PROV_DRBG *drbg, unsigned int *str)
void ossl_rand_drbg_free(PROV_DRBG *drbg)
int ossl_drbg_get_ctx_params(PROV_DRBG *drbg, OSSL_PARAM params[])
int ossl_drbg_get_ctx_params_no_lock(PROV_DRBG *drbg, OSSL_PARAM params[],
int ossl_drbg_set_ctx_params(PROV_DRBG *drbg, const OSSL_PARAM params[])
__owur static int ctr_update(PROV_DRBG *drbg,
static int drbg_ctr_instantiate(PROV_DRBG *drbg,
PROV_DRBG *drbg = (PROV_DRBG *)vdrbg;
static int drbg_ctr_reseed(PROV_DRBG *drbg,
PROV_DRBG *drbg = (PROV_DRBG *)vdrbg;
static int drbg_ctr_generate(PROV_DRBG *drbg,
PROV_DRBG *drbg = (PROV_DRBG *)vdrbg;
static int drbg_ctr_uninstantiate(PROV_DRBG *drbg)
PROV_DRBG *drbg = (PROV_DRBG *)vdrbg;
PROV_DRBG *drbg = (PROV_DRBG *)vdrbg;
static int drbg_ctr_init_lengths(PROV_DRBG *drbg)
static int drbg_ctr_init(PROV_DRBG *drbg)
static int drbg_ctr_new(PROV_DRBG *drbg)
PROV_DRBG *drbg = (PROV_DRBG *)vdrbg;
PROV_DRBG *drbg = (PROV_DRBG *)vdrbg;
PROV_DRBG *ctx = (PROV_DRBG *)vctx;
PROV_DRBG *drbg = (PROV_DRBG *)vctx;
static int hash_df1(PROV_DRBG *drbg, unsigned char *out,
static int add_bytes(PROV_DRBG *drbg, unsigned char *dst,
static int add_hash_to_v(PROV_DRBG *drbg, unsigned char inbyte,
static int hash_gen(PROV_DRBG *drbg, unsigned char *out, size_t outlen)
static int drbg_hash_instantiate(PROV_DRBG *drbg,
PROV_DRBG *drbg = (PROV_DRBG *)vdrbg;
static int drbg_hash_reseed(PROV_DRBG *drbg,
PROV_DRBG *drbg = (PROV_DRBG *)vdrbg;
static int drbg_hash_generate(PROV_DRBG *drbg,
PROV_DRBG *drbg = (PROV_DRBG *)vdrbg;
static int drbg_hash_uninstantiate(PROV_DRBG *drbg)
PROV_DRBG *drbg = (PROV_DRBG *)vdrbg;
PROV_DRBG *drbg = (PROV_DRBG *)vdrbg;
static int drbg_hash_new(PROV_DRBG *ctx)
PROV_DRBG *drbg = (PROV_DRBG *)vdrbg;
PROV_DRBG *drbg = (PROV_DRBG *)vdrbg;
PROV_DRBG *ctx = (PROV_DRBG *)vctx;
PROV_DRBG *drbg = (PROV_DRBG *)vctx;
static int hash_df(PROV_DRBG *drbg, unsigned char *out,
static int drbg_hmac_instantiate(PROV_DRBG *drbg,
PROV_DRBG *drbg = (PROV_DRBG *)vdrbg;
static int drbg_hmac_reseed(PROV_DRBG *drbg,
PROV_DRBG *drbg = (PROV_DRBG *)vdrbg;
static int drbg_hmac_generate(PROV_DRBG *drbg,
PROV_DRBG *drbg = (PROV_DRBG *)vdrbg;
static int drbg_hmac_uninstantiate(PROV_DRBG *drbg)
PROV_DRBG *drbg = (PROV_DRBG *)vdrbg;
PROV_DRBG *drbg = (PROV_DRBG *)vdrbg;
static int drbg_hmac_new(PROV_DRBG *drbg)
PROV_DRBG *drbg = (PROV_DRBG *)vdrbg;
PROV_DRBG *drbg = (PROV_DRBG *)vdrbg;
PROV_DRBG *ctx = (PROV_DRBG *)vctx;
PROV_DRBG *drbg = (PROV_DRBG *)vctx;
PROV_DRBG *ossl_rand_drbg_new(void *provctx, void *parent, const OSSL_DISPATCH *parent_dispatch,
int (*dnew)(PROV_DRBG *ctx),
int (*instantiate)(PROV_DRBG *drbg,
int (*uninstantiate)(PROV_DRBG *ctx),
int (*reseed)(PROV_DRBG *drbg, const unsigned char *ent, size_t ent_len,
int (*generate)(PROV_DRBG *, unsigned char *out, size_t outlen,
void ossl_rand_drbg_free(PROV_DRBG *drbg);
int ossl_prov_drbg_instantiate(PROV_DRBG *drbg, unsigned int strength,
int ossl_prov_drbg_uninstantiate(PROV_DRBG *drbg);
int ossl_prov_drbg_reseed(PROV_DRBG *drbg, int prediction_resistance,
int ossl_prov_drbg_generate(PROV_DRBG *drbg, unsigned char *out, size_t outlen,
int ossl_drbg_get_ctx_params(PROV_DRBG *drbg, OSSL_PARAM params[]);
int ossl_drbg_get_ctx_params_no_lock(PROV_DRBG *drbg, OSSL_PARAM params[],
int ossl_drbg_set_ctx_params(PROV_DRBG *drbg, const OSSL_PARAM params[]);
int ossl_drbg_verify_digest(PROV_DRBG *drbg, OSSL_LIB_CTX *libctx, const EVP_MD *md);
int (*instantiate)(PROV_DRBG *drbg,
int (*uninstantiate)(PROV_DRBG *ctx);
int (*reseed)(PROV_DRBG *drbg, const unsigned char *ent, size_t ent_len,
int (*generate)(PROV_DRBG *, unsigned char *out, size_t outlen,
return (PROV_DRBG *)drbg->algctx;
PROV_DRBG *p = prov_rand(drbg);
static PROV_DRBG *prov_rand(EVP_RAND_CTX *drbg)