summaryrefslogtreecommitdiffstats
path: root/doc/man7/provider.pod
diff options
context:
space:
mode:
authorMatt Caswell <matt@openssl.org>2020-05-07 12:11:44 +0100
committerMatt Caswell <matt@openssl.org>2020-05-16 17:10:03 +0100
commit06a2027bd58bcd109cab88e3ce27726613eeab50 (patch)
tree28a031a88f32c3c23e1e716d5ca47dbca738c015 /doc/man7/provider.pod
parentd40b42ab4c8a88740a2cc2a20c709fe869c4dd1e (diff)
Update documentation following changes of various types
The previous commit changed the types of various objects passed between the core and providers. Therefore the documentation needs to be updated to reflect that. Reviewed-by: Richard Levitte <levitte@openssl.org> (Merged from https://github.com/openssl/openssl/pull/11758)
Diffstat (limited to 'doc/man7/provider.pod')
-rw-r--r--doc/man7/provider.pod16
1 files changed, 11 insertions, 5 deletions
diff --git a/doc/man7/provider.pod b/doc/man7/provider.pod
index f7f6bbe9cd..581c33b9a4 100644
--- a/doc/man7/provider.pod
+++ b/doc/man7/provider.pod
@@ -42,16 +42,15 @@ If it's built-in, the initialization function may have any name.
The initialization function must have the following signature:
- int NAME(const OSSL_PROVIDER *provider,
+ int NAME(const OSSL_CORE_HANDLE *handle,
const OSSL_DISPATCH *in, const OSSL_DISPATCH **out,
void **provctx);
-I<provider> is the OpenSSL library object for the provider, and works
+I<handle> is the OpenSSL library object for the provider, and works
as a handle for everything the OpenSSL libraries need to know about
the provider.
-For the provider itself, it may hold some interesting information,
-and is also passed to some of the functions given in the dispatch
-array I<in>.
+For the provider itself, it is passed to some of the functions given in the
+dispatch array I<in>.
I<in> is a dispatch array of base functions offered by the OpenSSL
libraries, and the available functions are further described in
@@ -288,6 +287,13 @@ Should it be needed (if other providers are loaded and offer
implementations of the same algorithms), the property "provider=legacy" can be
used as a search criterion for these implementations.
+=head2 Null provider
+
+The null provider is built in as part of the F<libcrypto> library. It contains
+no algorithms in it at all. When fetching algorithms the default provider will
+be automatically loaded if no other provider has been explicitly loaded. To
+prevent that from happening you can explicitly load the null provider.
+
=head1 EXAMPLES
=head2 Fetching