static void *evp_md_from_dispatch(int name_id,
const OSSL_DISPATCH *fns,
- OSSL_PROVIDER *prov, void *unused)
+ OSSL_PROVIDER *prov)
{
EVP_MD *md = NULL;
int fncnt = 0;
{
EVP_MD *md =
evp_generic_fetch(ctx, OSSL_OP_DIGEST, algorithm, properties,
- evp_md_from_dispatch, NULL, evp_md_up_ref,
- evp_md_free);
+ evp_md_from_dispatch, evp_md_up_ref, evp_md_free);
return md;
}
{
evp_generic_do_all(libctx, OSSL_OP_DIGEST,
(void (*)(void *, void *))fn, arg,
- evp_md_from_dispatch, NULL, evp_md_free);
+ evp_md_from_dispatch, evp_md_free);
}
static void *evp_cipher_from_dispatch(const int name_id,
const OSSL_DISPATCH *fns,
- OSSL_PROVIDER *prov,
- void *unused)
+ OSSL_PROVIDER *prov)
{
EVP_CIPHER *cipher = NULL;
int fnciphcnt = 0, fnctxcnt = 0;
{
EVP_CIPHER *cipher =
evp_generic_fetch(ctx, OSSL_OP_CIPHER, algorithm, properties,
- evp_cipher_from_dispatch, NULL, evp_cipher_up_ref,
+ evp_cipher_from_dispatch, evp_cipher_up_ref,
evp_cipher_free);
return cipher;
{
evp_generic_do_all(libctx, OSSL_OP_CIPHER,
(void (*)(void *, void *))fn, arg,
- evp_cipher_from_dispatch, NULL, evp_cipher_free);
+ evp_cipher_from_dispatch, evp_cipher_free);
}
const char *names; /* For get_evp_method_from_store() */
const char *propquery; /* For get_evp_method_from_store() */
void *(*method_from_dispatch)(int name_id, const OSSL_DISPATCH *,
- OSSL_PROVIDER *, void *);
- void *method_data;
+ OSSL_PROVIDER *);
int (*refcnt_up_method)(void *method);
void (*destruct_method)(void *method);
};
if (name_id == 0)
return NULL;
- return methdata->method_from_dispatch(name_id, fns, prov,
- methdata->method_data);
+ return methdata->method_from_dispatch(name_id, fns, prov);
}
static void destruct_evp_method(void *method, void *data)
const char *properties,
void *(*new_method)(int name_id,
const OSSL_DISPATCH *fns,
- OSSL_PROVIDER *prov,
- void *method_data),
- void *method_data,
+ OSSL_PROVIDER *prov),
int (*up_ref_method)(void *),
void (*free_method)(void *))
{
mcmdata.destruct_method = free_method;
mcmdata.refcnt_up_method = up_ref_method;
mcmdata.destruct_method = free_method;
- mcmdata.method_data = method_data;
if ((method = ossl_method_construct(libctx, operation_id,
0 /* !force_cache */,
&mcm, &mcmdata)) != NULL) {
const char *name, const char *properties,
void *(*new_method)(int name_id,
const OSSL_DISPATCH *fns,
- OSSL_PROVIDER *prov,
- void *method_data),
- void *method_data,
+ OSSL_PROVIDER *prov),
int (*up_ref_method)(void *),
void (*free_method)(void *))
{
return inner_evp_generic_fetch(libctx,
operation_id, 0, name, properties,
- new_method, method_data,
- up_ref_method, free_method);
+ new_method, up_ref_method, free_method);
}
/*
int name_id, const char *properties,
void *(*new_method)(int name_id,
const OSSL_DISPATCH *fns,
- OSSL_PROVIDER *prov,
- void *method_data),
- void *method_data,
+ OSSL_PROVIDER *prov),
int (*up_ref_method)(void *),
void (*free_method)(void *))
{
return inner_evp_generic_fetch(libctx,
operation_id, name_id, NULL, properties,
- new_method, method_data,
- up_ref_method, free_method);
+ new_method, up_ref_method, free_method);
}
int EVP_set_default_properties(OPENSSL_CTX *libctx, const char *propq)
void (*user_fn)(void *method, void *arg);
void *user_arg;
void *(*new_method)(const int name_id, const OSSL_DISPATCH *fns,
- OSSL_PROVIDER *prov, void *method_data);
- void *method_data;
+ OSSL_PROVIDER *prov);
void (*free_method)(void *);
};
void *method = NULL;
if (name_id != 0)
- method = data->new_method(name_id, algo->implementation, provider,
- data->method_data);
+ method = data->new_method(name_id, algo->implementation, provider);
if (method != NULL) {
data->user_fn(method, data->user_arg);
void *user_arg,
void *(*new_method)(int name_id,
const OSSL_DISPATCH *fns,
- OSSL_PROVIDER *prov,
- void *method_data),
- void *method_data,
+ OSSL_PROVIDER *prov),
void (*free_method)(void *))
{
struct do_all_data_st data;
data.new_method = new_method;
- data.method_data = method_data;
data.free_method = free_method;
data.user_fn = user_fn;
data.user_arg = user_arg;
const char *name, const char *properties,
void *(*new_method)(int name_id,
const OSSL_DISPATCH *fns,
- OSSL_PROVIDER *prov,
- void *method_data),
- void *method_data,
+ OSSL_PROVIDER *prov),
int (*up_ref_method)(void *),
void (*free_method)(void *));
void *evp_generic_fetch_by_number(OPENSSL_CTX *ctx, int operation_id,
int name_id, const char *properties,
void *(*new_method)(int name_id,
const OSSL_DISPATCH *fns,
- OSSL_PROVIDER *prov,
- void *method_data),
- void *method_data,
+ OSSL_PROVIDER *prov),
int (*up_ref_method)(void *),
void (*free_method)(void *));
void evp_generic_do_all(OPENSSL_CTX *libctx, int operation_id,
void *user_arg,
void *(*new_method)(int name_id,
const OSSL_DISPATCH *fns,
- OSSL_PROVIDER *prov,
- void *method_data),
- void *method_data,
+ OSSL_PROVIDER *prov),
void (*free_method)(void *));
/* Internal fetchers for method types that are to be combined with others */
static void *evp_keyexch_from_dispatch(int name_id,
const OSSL_DISPATCH *fns,
- OSSL_PROVIDER *prov,
- void *unused)
+ OSSL_PROVIDER *prov)
{
EVP_KEYEXCH *exchange = NULL;
int fncnt = 0, paramfncnt = 0;
EVP_KEYEXCH *EVP_KEYEXCH_fetch(OPENSSL_CTX *ctx, const char *algorithm,
const char *properties)
{
- EVP_KEYEXCH *keyexch = NULL;
-
- keyexch = evp_generic_fetch(ctx, OSSL_OP_KEYEXCH, algorithm, properties,
- evp_keyexch_from_dispatch, NULL,
- (int (*)(void *))EVP_KEYEXCH_up_ref,
- (void (*)(void *))EVP_KEYEXCH_free);
-
- return keyexch;
+ return evp_generic_fetch(ctx, OSSL_OP_KEYEXCH, algorithm, properties,
+ evp_keyexch_from_dispatch,
+ (int (*)(void *))EVP_KEYEXCH_up_ref,
+ (void (*)(void *))EVP_KEYEXCH_free);
}
int EVP_PKEY_derive_init(EVP_PKEY_CTX *ctx)
{
evp_generic_do_all(libctx, OSSL_OP_KEYEXCH,
(void (*)(void *, void *))fn, arg,
- evp_keyexch_from_dispatch, NULL,
+ evp_keyexch_from_dispatch,
(void (*)(void *))EVP_KEYEXCH_free);
}
static void *evp_kdf_from_dispatch(int name_id,
const OSSL_DISPATCH *fns,
- OSSL_PROVIDER *prov,
- void *method_data)
+ OSSL_PROVIDER *prov)
{
EVP_KDF *kdf = NULL;
int fnkdfcnt = 0, fnctxcnt = 0;
const char *properties)
{
return evp_generic_fetch(libctx, OSSL_OP_KDF, algorithm, properties,
- evp_kdf_from_dispatch, NULL, evp_kdf_up_ref,
+ evp_kdf_from_dispatch, evp_kdf_up_ref,
evp_kdf_free);
}
{
evp_generic_do_all(libctx, OSSL_OP_KDF,
(void (*)(void *, void *))fn, arg,
- evp_kdf_from_dispatch, NULL, evp_kdf_free);
+ evp_kdf_from_dispatch, evp_kdf_free);
}
static void *keymgmt_from_dispatch(int name_id,
const OSSL_DISPATCH *fns,
- OSSL_PROVIDER *prov,
- void *unused)
+ OSSL_PROVIDER *prov)
{
EVP_KEYMGMT *keymgmt = NULL;
{
return evp_generic_fetch_by_number(ctx,
OSSL_OP_KEYMGMT, name_id, properties,
- keymgmt_from_dispatch, NULL,
+ keymgmt_from_dispatch,
(int (*)(void *))EVP_KEYMGMT_up_ref,
(void (*)(void *))EVP_KEYMGMT_free);
}
const char *properties)
{
return evp_generic_fetch(ctx, OSSL_OP_KEYMGMT, algorithm, properties,
- keymgmt_from_dispatch, NULL,
+ keymgmt_from_dispatch,
(int (*)(void *))EVP_KEYMGMT_up_ref,
(void (*)(void *))EVP_KEYMGMT_free);
}
{
evp_generic_do_all(libctx, OSSL_OP_KEYMGMT,
(void (*)(void *, void *))fn, arg,
- keymgmt_from_dispatch, NULL,
+ keymgmt_from_dispatch,
(void (*)(void *))EVP_KEYMGMT_free);
}
static void *evp_mac_from_dispatch(int name_id,
const OSSL_DISPATCH *fns,
- OSSL_PROVIDER *prov,
- void *unused)
+ OSSL_PROVIDER *prov)
{
EVP_MAC *mac = NULL;
int fnmaccnt = 0, fnctxcnt = 0;
const char *properties)
{
return evp_generic_fetch(libctx, OSSL_OP_MAC, algorithm, properties,
- evp_mac_from_dispatch, NULL, evp_mac_up_ref,
+ evp_mac_from_dispatch, evp_mac_up_ref,
evp_mac_free);
}
{
evp_generic_do_all(libctx, OSSL_OP_MAC,
(void (*)(void *, void *))fn, arg,
- evp_mac_from_dispatch, NULL, evp_mac_free);
+ evp_mac_from_dispatch, evp_mac_free);
}
static void *evp_signature_from_dispatch(int name_id,
const OSSL_DISPATCH *fns,
- OSSL_PROVIDER *prov,
- void *unused)
+ OSSL_PROVIDER *prov)
{
EVP_SIGNATURE *signature = NULL;
int ctxfncnt = 0, signfncnt = 0, verifyfncnt = 0, verifyrecfncnt = 0;
const char *properties)
{
return evp_generic_fetch(ctx, OSSL_OP_SIGNATURE, algorithm, properties,
- evp_signature_from_dispatch, NULL,
+ evp_signature_from_dispatch,
(int (*)(void *))EVP_SIGNATURE_up_ref,
(void (*)(void *))EVP_SIGNATURE_free);
}
{
evp_generic_do_all(libctx, OSSL_OP_SIGNATURE,
(void (*)(void *, void *))fn, arg,
- evp_signature_from_dispatch, NULL,
+ evp_signature_from_dispatch,
(void (*)(void *))EVP_SIGNATURE_free);
}