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:58:52 +0200
commit2b80a7490d5008fa40417b804ea16e8fee13d93d (patch)
tree06c3d7115a34e876a506af419d322feae2d0449f /doc/man7
parentd11cab47810715ba472070300b180944a1d93633 (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)
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 5af35bf4dc..881854a3af 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