SSL_free

Section: OpenSSL (3)
Updated: 2009-02-14
Index Return to Main Contents
 

NAME

SSL_free - free an allocated SSL structure  

SYNOPSIS

 #include <openssl/ssl.h>

 void SSL_free(SSL *ssl);

 

DESCRIPTION

SSL_free() decrements the reference count of ssl, and removes the SSL structure pointed to by ssl and frees up the allocated memory if the reference count has reached 0.  

NOTES

SSL_free() also calls the free()ing procedures for indirectly affected items, if applicable: the buffering BIO, the read and write BIOs, cipher lists specially created for this ssl, the SSL_SESSION. Do not explicitly free these indirectly freed up items before or after calling SSL_free(), as trying to free things twice may lead to program failure.

The ssl session has reference counts from two users: the SSL object, for which the reference count is removed by SSL_free() and the internal session cache. If the session is considered bad, because SSL_shutdown(3) was not called for the connection and SSL_set_shutdown(3) was not used to set the SSL_SENT_SHUTDOWN state, the session will also be removed from the session cache as required by RFC2246.  

RETURN VALUES

SSL_free() does not provide diagnostic information.

SSL_new(3), SSL_clear(3), SSL_shutdown(3), SSL_set_shutdown(3), ssl(3)