]> git.ipfire.org Git - thirdparty/openssl.git/blame - doc/man3/OPENSSL_CTX.pod
Implement EVP_MAC_do_all_ex()
[thirdparty/openssl.git] / doc / man3 / OPENSSL_CTX.pod
CommitLineData
d64b6299
RL
1=pod
2
3=head1 NAME
4
5OPENSSL_CTX, OPENSSL_CTX_new, OPENSSL_CTX_free - OpenSSL library context
6
7=head1 SYNOPSIS
8
9 #include <openssl/crypto.h>
10
11 typedef struct openssl_ctx_st OPENSSL_CTX;
12
13 OPENSSL_CTX *OPENSSL_CTX_new(void);
14 void OPENSSL_CTX_free(OPENSSL_CTX *ctx);
15
16=head1 DESCRIPTION
17
18C<OPENSSL_CTX> is an internal OpenSSL library context type.
19Applications may allocate their own, but may also use C<NULL> to use
20the internal default context with functions that take a C<OPENSSL_CTX>
21argument.
22
23OPENSSL_CTX_new() creates a new OpenSSL library context.
ff6da65e
MC
24When a non default library context is in use care should be taken with
25multi-threaded applications to properly clean up thread local resources before
26the OPENSSL_CTX is freed.
27See L<OPENSSL_thread_stop_ex(3)> for more information.
d64b6299
RL
28
29OPENSSL_CTX_free() frees the given C<ctx>.
30
31=head1 RETURN VALUES
32
33OPENSSL_CTX_new() return a library context pointer on success, or
34C<NULL> on error.
35
36OPENSSL_CTX_free() doesn't return any value.
37
38=head1 HISTORY
39
40OPENSSL_CTX, OPENSSL_CTX_new() and OPENSSL_CTX_free()
4674aaf4 41were added in OpenSSL 3.0.
d64b6299
RL
42
43=head1 COPYRIGHT
44
45Copyright 2019 The OpenSSL Project Authors. All Rights Reserved.
46
47Licensed under the Apache License 2.0 (the "License"). You may not use
48this file except in compliance with the License. You can obtain a copy
49in the file LICENSE in the source distribution or at
50L<https://www.openssl.org/source/license.html>.
51
52=cut