|  | =pod | 
|  |  | 
|  | =head1 NAME | 
|  |  | 
|  | SSL_CTX_free - free an allocated SSL_CTX object | 
|  |  | 
|  | =head1 SYNOPSIS | 
|  |  | 
|  | #include <openssl/ssl.h> | 
|  |  | 
|  | void SSL_CTX_free(SSL_CTX *ctx); | 
|  |  | 
|  | =head1 DESCRIPTION | 
|  |  | 
|  | SSL_CTX_free() decrements the reference count of B<ctx>, and removes the | 
|  | SSL_CTX object pointed to by B<ctx> and frees up the allocated memory if the reference count has reached 0. | 
|  |  | 
|  | It also calls the free()ing procedures for indirectly affected items, if | 
|  | applicable: the session cache, the list of ciphers, the list of Client CAs, | 
|  | the certificates and keys. | 
|  |  | 
|  | If B<ctx> is NULL nothing is done. | 
|  |  | 
|  | =head1 WARNINGS | 
|  |  | 
|  | If a session-remove callback is set (SSL_CTX_sess_set_remove_cb()), this | 
|  | callback will be called for each session being freed from B<ctx>'s | 
|  | session cache. This implies, that all corresponding sessions from an | 
|  | external session cache are removed as well. If this is not desired, the user | 
|  | should explicitly unset the callback by calling | 
|  | SSL_CTX_sess_set_remove_cb(B<ctx>, NULL) prior to calling SSL_CTX_free(). | 
|  |  | 
|  | =head1 RETURN VALUES | 
|  |  | 
|  | SSL_CTX_free() does not provide diagnostic information. | 
|  |  | 
|  | =head1 SEE ALSO | 
|  |  | 
|  | L<SSL_CTX_new(3)>, L<ssl(7)>, | 
|  | L<SSL_CTX_sess_set_get_cb(3)> | 
|  |  | 
|  | =head1 COPYRIGHT | 
|  |  | 
|  | Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved. | 
|  |  | 
|  | Licensed under the Apache License 2.0 (the "License").  You may not use | 
|  | this file except in compliance with the License.  You can obtain a copy | 
|  | in the file LICENSE in the source distribution or at | 
|  | L<https://www.openssl.org/source/license.html>. | 
|  |  | 
|  | =cut |