summaryrefslogtreecommitdiffstats
path: root/crypto/provider.c
diff options
context:
space:
mode:
authorMatt Caswell <matt@openssl.org>2020-05-04 15:28:15 +0100
committerMatt Caswell <matt@openssl.org>2020-06-05 10:31:06 +0100
commit5f603a280ca71b7136861b9bc408f37fd1c4e0d7 (patch)
tree4c201e275d78aede7ba0a4d03425ab300fce665a /crypto/provider.c
parent263ff2c9d4c88f19133d21d9956d71edd7401d54 (diff)
Enable applications to directly call a provider's query operation
This is useful to get hold of the low-level dispatch tables. This could be used to create a new provider based on an existing one. Reviewed-by: Shane Lontis <shane.lontis@oracle.com> (Merged from https://github.com/openssl/openssl/pull/11834)
Diffstat (limited to 'crypto/provider.c')
-rw-r--r--crypto/provider.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/crypto/provider.c b/crypto/provider.c
index 13438cefe3..6b029ecced 100644
--- a/crypto/provider.c
+++ b/crypto/provider.c
@@ -57,6 +57,15 @@ int OSSL_PROVIDER_get_params(const OSSL_PROVIDER *prov, OSSL_PARAM params[])
return ossl_provider_get_params(prov, params);
}
+
+const OSSL_ALGORITHM *OSSL_PROVIDER_query_operation(const OSSL_PROVIDER *prov,
+ int operation_id,
+ int *no_cache)
+{
+ return ossl_provider_query_operation(prov, operation_id, no_cache);
+}
+
+
int OSSL_PROVIDER_add_builtin(OPENSSL_CTX *libctx, const char *name,
OSSL_provider_init_fn *init_fn)
{