summaryrefslogtreecommitdiffstats
path: root/doc/man7
diff options
context:
space:
mode:
authorTomas Mraz <tomas@openssl.org>2021-10-07 11:10:19 +0200
committerTomas Mraz <tomas@openssl.org>2021-10-11 10:59:11 +0200
commit4f4711c7657396239ba9b9e5a7149e3cdcafe2e4 (patch)
treeea56b0597442478b79bee4a9dacb2ebac62a1e2d /doc/man7
parentfa885e4ba153b6be3e446c8f323762482cef92ae (diff)
doc: OPENSSL_CORE_CTX should never be cast to OSSL_LIB_CTX
Reviewed-by: Matt Caswell <matt@openssl.org> (Merged from https://github.com/openssl/openssl/pull/16771) (cherry picked from commit 2b80a7490d5008fa40417b804ea16e8fee13d93d)
Diffstat (limited to 'doc/man7')
-rw-r--r--doc/man7/provider-base.pod10
1 files changed, 7 insertions, 3 deletions
diff --git a/doc/man7/provider-base.pod b/doc/man7/provider-base.pod
index d1e26baa11..0005dc7181 100644
--- a/doc/man7/provider-base.pod
+++ b/doc/man7/provider-base.pod
@@ -220,10 +220,14 @@ the thread that is stopping and gets passed the provider context as an
argument. This may be useful to perform thread specific clean up such as
freeing thread local variables.
-core_get_libctx() retrieves the library context in which the library
+core_get_libctx() retrieves the core context in which the library
object for the current provider is stored, accessible through the I<handle>.
-This may sometimes be useful if the provider wishes to store a
-reference to its context in the same library context.
+This function is useful only for built-in providers such as the default
+provider. Never cast this to OSSL_LIB_CTX in a provider that is not
+built-in as the OSSL_LIB_CTX of the library loading the provider might be
+a completely different structure than the OSSL_LIB_CTX of the library the
+provider is linked to. Use L<OSSL_LIB_CTX_new_child(3)> instead to obtain
+a proper library context that is linked to the application library context.
core_new_error(), core_set_error_debug() and core_vset_error() are
building blocks for reporting an error back to the core, with