diff options
Diffstat (limited to 'doc')
-rw-r--r-- | doc/internal/man3/ossl_provider_new.pod | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/doc/internal/man3/ossl_provider_new.pod b/doc/internal/man3/ossl_provider_new.pod index 928cc9b844..09b2e04117 100644 --- a/doc/internal/man3/ossl_provider_new.pod +++ b/doc/internal/man3/ossl_provider_new.pod @@ -55,7 +55,8 @@ ossl_provider_get_capabilities */ int ossl_provider_activate(OSSL_PROVIDER *prov, int upcalls, int aschild); int ossl_provider_deactivate(OSSL_PROVIDER *prov); - int ossl_provider_add_to_store(OSSL_PROVIDER *prov, int retain_fallbacks); + int ossl_provider_add_to_store(OSSL_PROVIDER *prov, OSSL_PROVIDER **actualprov, + int retain_fallbacks); /* Return pointer to the provider's context */ void *ossl_provider_ctx(const OSSL_PROVIDER *prov); @@ -229,7 +230,13 @@ that count reaches zero, the activation flag is cleared. ossl_provider_add_to_store() adds the provider I<prov> to the provider store and makes it available to other threads. This will prevent future automatic loading -of fallback providers, unless I<retain_fallbacks> is true. +of fallback providers, unless I<retain_fallbacks> is true. If a provider of the +same name already exists in the store then it is not added but this function +still returns success. On success the I<actualprov> value is populated with a +pointer to the provider of the given name that is now in the store. The +reference passed in the I<prov> argument is consumed by this function. A +reference to the provider that should be used is passed back in the +I<actualprov> argument. ossl_provider_ctx() returns a context created by the provider. Outside of the provider, it's completely opaque, but it needs to be |