Blame doc/man3/SSL_free.pod

Packit c4476c
=pod
Packit c4476c
Packit c4476c
=head1 NAME
Packit c4476c
Packit c4476c
SSL_free - free an allocated SSL structure
Packit c4476c
Packit c4476c
=head1 SYNOPSIS
Packit c4476c
Packit c4476c
 #include <openssl/ssl.h>
Packit c4476c
Packit c4476c
 void SSL_free(SSL *ssl);
Packit c4476c
Packit c4476c
=head1 DESCRIPTION
Packit c4476c
Packit c4476c
SSL_free() decrements the reference count of B<ssl>, and removes the SSL
Packit c4476c
structure pointed to by B<ssl> and frees up the allocated memory if the
Packit c4476c
reference count has reached 0.
Packit c4476c
If B<ssl> is NULL nothing is done.
Packit c4476c
Packit c4476c
=head1 NOTES
Packit c4476c
Packit c4476c
SSL_free() also calls the free()ing procedures for indirectly affected items, if
Packit c4476c
applicable: the buffering BIO, the read and write BIOs,
Packit c4476c
cipher lists specially created for this B<ssl>, the B<SSL_SESSION>.
Packit c4476c
Do not explicitly free these indirectly freed up items before or after
Packit c4476c
calling SSL_free(), as trying to free things twice may lead to program
Packit c4476c
failure.
Packit c4476c
Packit c4476c
The ssl session has reference counts from two users: the SSL object, for
Packit c4476c
which the reference count is removed by SSL_free() and the internal
Packit c4476c
session cache. If the session is considered bad, because
Packit c4476c
L<SSL_shutdown(3)> was not called for the connection
Packit c4476c
and L<SSL_set_shutdown(3)> was not used to set the
Packit c4476c
SSL_SENT_SHUTDOWN state, the session will also be removed
Packit c4476c
from the session cache as required by RFC2246.
Packit c4476c
Packit c4476c
=head1 RETURN VALUES
Packit c4476c
Packit c4476c
SSL_free() does not provide diagnostic information.
Packit c4476c
Packit c4476c
L<SSL_new(3)>, L<SSL_clear(3)>,
Packit c4476c
L<SSL_shutdown(3)>, L<SSL_set_shutdown(3)>,
Packit c4476c
L<ssl(7)>
Packit c4476c
Packit c4476c
=head1 COPYRIGHT
Packit c4476c
Packit c4476c
Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved.
Packit c4476c
Packit c4476c
Licensed under the OpenSSL license (the "License").  You may not use
Packit c4476c
this file except in compliance with the License.  You can obtain a copy
Packit c4476c
in the file LICENSE in the source distribution or at
Packit c4476c
L<https://www.openssl.org/source/license.html>.
Packit c4476c
Packit c4476c
=cut