diff options
author | Matt Caswell <matt@openssl.org> | 2020-12-10 16:57:33 +0000 |
---|---|---|
committer | Matt Caswell <matt@openssl.org> | 2021-01-14 17:30:46 +0000 |
commit | 886ad0045bf128795049b48f7d7977f72cc7220c (patch) | |
tree | 944006518e461d45ba8021e8f61134a66b37a86c /doc/man7 | |
parent | ae95a40e8d453aa9d4f6499568f658ffc88a7d6e (diff) |
Document the core_thread_start upcall
The core_thread_start upcall previously had a placeholder in the docs.
Reviewed-by: Tomas Mraz <tmraz@fedoraproject.org>
(Merged from https://github.com/openssl/openssl/pull/13660)
Diffstat (limited to 'doc/man7')
-rw-r--r-- | doc/man7/provider-base.pod | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/doc/man7/provider-base.pod b/doc/man7/provider-base.pod index 7e8f5188a5..e2315e7bc4 100644 --- a/doc/man7/provider-base.pod +++ b/doc/man7/provider-base.pod @@ -18,8 +18,11 @@ provider-base /* Functions offered by libcrypto to the providers */ const OSSL_ITEM *core_gettable_params(const OSSL_CORE_HANDLE *handle); int core_get_params(const OSSL_CORE_HANDLE *handle, OSSL_PARAM params[]); + + typedef void (*OSSL_thread_stop_handler_fn)(void *arg); int core_thread_start(const OSSL_CORE_HANDLE *handle, OSSL_thread_stop_handler_fn handfn); + OPENSSL_CORE_CTX *core_get_libctx(const OSSL_CORE_HANDLE *handle); void core_new_error(const OSSL_CORE_HANDLE *handle); void core_set_error_debug(const OSSL_CORE_HANDLE *handle, @@ -164,7 +167,13 @@ core_get_params() retrieves parameters from the core for the given I<handle>. See L</Core parameters> below for a description of currently known parameters. -=for comment core_thread_start() TBA +The core_thread_start() function informs the core that the provider has started +an interest in the current thread. The core will inform the provider when the +thread eventually stops. It must be passed the I<handle> for this provider, as +well as a callback I<handfn> which will be called when the thread stops. The +callback will subsequently be called from 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 object for the current provider is stored, accessible through the I<handle>. |