summaryrefslogtreecommitdiffstats
path: root/doc
diff options
context:
space:
mode:
authorMatt Caswell <matt@openssl.org>2020-05-08 16:44:02 +0100
committerMatt Caswell <matt@openssl.org>2020-06-05 10:31:46 +0100
commitd01d375264e73f49a416409e2f8febe88ad39c8a (patch)
tree8ca54fb81fe6e81cceee2e4b713676a0059edfba /doc
parent5f603a280ca71b7136861b9bc408f37fd1c4e0d7 (diff)
Implement OSSL_PROVIDER_get0_provider_ctx()
Implement a function which enables us to get hold of the provider ctx for a loaded provider. Reviewed-by: Shane Lontis <shane.lontis@oracle.com> (Merged from https://github.com/openssl/openssl/pull/11834)
Diffstat (limited to 'doc')
-rw-r--r--doc/man3/OSSL_PROVIDER.pod13
1 files changed, 9 insertions, 4 deletions
diff --git a/doc/man3/OSSL_PROVIDER.pod b/doc/man3/OSSL_PROVIDER.pod
index 177e2c2e83..d6f0af53c9 100644
--- a/doc/man3/OSSL_PROVIDER.pod
+++ b/doc/man3/OSSL_PROVIDER.pod
@@ -6,8 +6,8 @@ OSSL_PROVIDER_set_default_search_path,
OSSL_PROVIDER, OSSL_PROVIDER_load, OSSL_PROVIDER_unload,
OSSL_PROVIDER_available, OSSL_PROVIDER_do_all,
OSSL_PROVIDER_gettable_params, OSSL_PROVIDER_get_params,
-OSSL_PROVIDER_query_operation, OSSL_PROVIDER_add_builtin,
-OSSL_PROVIDER_name - provider routines
+OSSL_PROVIDER_query_operation, OSSL_PROVIDER_get0_provider_ctx,
+OSSL_PROVIDER_add_builtin, OSSL_PROVIDER_name - provider routines
=head1 SYNOPSIS
@@ -31,6 +31,7 @@ OSSL_PROVIDER_name - provider routines
const OSSL_ALGORITHM *OSSL_PROVIDER_query_operation(const OSSL_PROVIDER *prov,
int operation_id,
int *no_cache);
+ void *OSSL_PROVIDER_get0_provider_ctx(const OSSL_PROVIDER *prov);
int OSSL_PROVIDER_add_builtin(OPENSSL_CTX *libctx, const char *name,
ossl_provider_init_fn *init_fn);
@@ -88,13 +89,17 @@ function, and the variables acting as buffers for this parameter array
should be filled with data when it returns successfully.
OSSL_PROVIDER_query_operation() calls the provider's I<query_operation>
-function (see L<provider(7)>), if the provider has one. It should return an
+function (see L<provider(7)>), if the provider has one. It returns an
array of I<OSSL_ALGORITHM> for the given I<operation_id> terminated by an all
NULL OSSL_ALGORITHM entry. This is considered a low-level function that most
applications should not need to call.
+OSSL_PROVIDER_get0_provider_ctx() returns the provider context for the given
+provider. The provider context is an opaque handle set by the provider itself
+and is passed back to the provider by libcrypto in various function calls.
+
If it is permissible to cache references to this array then I<*no_store> is set
-to 0 or 1 otherwise. If the array is not cacheable then it should be assumed to
+to 0 or 1 otherwise. If the array is not cacheable then it is assumed to
have a short lifetime.
OSSL_PROVIDER_name() returns the name of the given provider.