Sortix 1.1dev ports manual
This manual documents Sortix 1.1dev ports. You can instead view this document in the latest official manual.
SSL_SESSION_FREE(3) | Library Functions Manual | SSL_SESSION_FREE(3) |
NAME
SSL_SESSION_up_ref, SSL_SESSION_free — SSL_SESSION reference countingSYNOPSIS
#include <openssl/ssl.h> intSSL_SESSION_up_ref(SSL_SESSION *session); void
SSL_SESSION_free(SSL_SESSION *session);
DESCRIPTION
SSL_SESSION_up_ref() increments the reference count of the given session by 1. SSL_SESSION_free() decrements the reference count of the given session by 1. If the reference count reaches 0, it frees the memory used by the session. If session is aNULL
pointer, no action occurs.
SSL_SESSION objects are allocated when a
TLS/SSL handshake operation is successfully completed. Depending on the
settings, see
SSL_CTX_set_session_cache_mode(3),
the SSL_SESSION objects are internally
referenced by the SSL_CTX and linked into its
session cache. SSL objects may be using the
SSL_SESSION object; as a session may be
reused, several SSL objects may be using one
SSL_SESSION object at the same time. It is
therefore crucial to keep the reference count (usage information) correct and
not delete a SSL_SESSION object that is still
used, as this may lead to program failures due to dangling pointers. These
failures may also appear delayed, e.g., when an
SSL_SESSION object is completely freed as the
reference count incorrectly becomes 0, but it is still referenced in the
internal session cache and the cache list is processed during a
SSL_CTX_flush_sessions(3)
operation.
SSL_SESSION_free() must only be called for
SSL_SESSION objects, for which the reference
count was explicitly incremented (e.g., by calling
SSL_get1_session(3);
see
SSL_get_session(3))
or when the SSL_SESSION object was generated
outside a TLS handshake operation, e.g., by using
d2i_SSL_SESSION(3).
It must not be called on other SSL_SESSION
objects, as this would cause incorrect reference counts and therefore program
failures.
RETURN VALUES
SSL_SESSION_up_ref() returns 1 on success or 0 on error.SEE ALSO
d2i_SSL_SESSION(3), ssl(3), SSL_CTX_flush_sessions(3), SSL_CTX_set_session_cache_mode(3), SSL_get_session(3), SSL_SESSION_new(3)HISTORY
SSL_SESSION_free() first appeared in SSLeay 0.5.2 and has been available since OpenBSD 2.4. SSL_SESSION_up_ref() first appeared in OpenSSL 1.1.0 and has been available since OpenBSD 6.3.June 12, 2019 | Debian |