SSL_CTX_SESS_NUMBER(3SSL)

πŸ’– SSL_CTX_SESS_NUMBER πŸ’–

okay bestie, so this is from the OpenSSL manual, section 3SSL β€” it's the one about peeking at your session cache stats ✨


🌸 NAME 🌸

SSL_CTX_sess_number, SSL_CTX_sess_connect, SSL_CTX_sess_connect_good, SSL_CTX_sess_connect_renegotiate, SSL_CTX_sess_accept, SSL_CTX_sess_accept_good, SSL_CTX_sess_accept_renegotiate, SSL_CTX_sess_hits, SSL_CTX_sess_cb_hits, SSL_CTX_sess_misses, SSL_CTX_sess_timeouts, SSL_CTX_sess_cache_full β€” literally all of them just obtain session cache statistics πŸ‘‘


✨ SYNOPSIS ✨

#include <openssl/ssl.h>

long SSL_CTX_sess_number(SSL_CTX *ctx);
long SSL_CTX_sess_connect(SSL_CTX *ctx);
long SSL_CTX_sess_connect_good(SSL_CTX *ctx);
long SSL_CTX_sess_connect_renegotiate(SSL_CTX *ctx);
long SSL_CTX_sess_accept(SSL_CTX *ctx);
long SSL_CTX_sess_accept_good(SSL_CTX *ctx);
long SSL_CTX_sess_accept_renegotiate(SSL_CTX *ctx);
long SSL_CTX_sess_hits(SSL_CTX *ctx);
long SSL_CTX_sess_cb_hits(SSL_CTX *ctx);
long SSL_CTX_sess_misses(SSL_CTX *ctx);
long SSL_CTX_sess_timeouts(SSL_CTX *ctx);
long SSL_CTX_sess_cache_full(SSL_CTX *ctx);

twelve little functions, all taking a <italic>ctx</italic>, all handing you back a long. it's giving ✨consistency✨


πŸ¦‹ DESCRIPTION πŸ¦‹

okay so each one of these is basically a different little counter you can vibe-check. here's the rundown, no cap 🌈

  • SSL_CTX_sess_number() β€” returns the current number of sessions chillin' in the internal session cache. that's the live headcount bestie πŸ’…
  • SSL_CTX_sess_connect() β€” returns the number of started SSL/TLS handshakes in client mode. started, not finished β€” we're counting the attempts πŸŽ€
  • SSL_CTX_sess_connect_good() β€” returns the number of successfully established SSL/TLS sessions in client mode. the ones that actually ate πŸ”₯
  • SSL_CTX_sess_connect_renegotiate() β€” returns the number of started renegotiations in client mode.
  • SSL_CTX_sess_accept() β€” returns the number of started SSL/TLS handshakes in server mode. server-side version of the "started" count πŸ‘‘
  • SSL_CTX_sess_accept_good() β€” returns the number of successfully established SSL/TLS sessions in server mode.
  • SSL_CTX_sess_accept_renegotiate() β€” returns the number of started renegotiations in server mode.
  • SSL_CTX_sess_hits() β€” returns the number of successfully reused sessions ✨ In client mode, a session set with SSL_set_session(3) that gets successfully reused is counted as a hit. In server mode, a session successfully retrieved from the internal or external cache is counted as a hit. hits = the moment the cache came through for you πŸ’–
  • SSL_CTX_sess_cb_hits() β€” returns the number of successfully retrieved sessions from the external session cache in server mode. external cache W 🫢
  • SSL_CTX_sess_misses() β€” returns the number of sessions proposed by clients that were not found in the internal session cache in server mode. the flops 😭 (affectionate)
  • SSL_CTX_sess_timeouts() β€” returns the number of sessions proposed by clients and either found in the internal or external session cache in server mode, but that were invalid due to timeout. and listen β€” these sessions are not included in the SSL_CTX_sess_hits() count, okay? don't double count, that's not the vibe πŸ™ˆ
  • SSL_CTX_sess_cache_full() β€” returns the number of sessions that were removed because the maximum session cache size was exceeded. eviction era πŸ’€

⭐ RETURN VALUES ⭐

the functions return the values indicated in the DESCRIPTION section. that's it, that's the tea β˜• no surprises, no plot twists.


🌈 SEE ALSO 🌈


Copyright 2001-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 <https://www.openssl.org/source/license.html>.


and that's the whole page babes πŸŽ€ this was SSL_CTX_SESS_NUMBER(3SSL) from OpenSSL 4.0.3, dated 2026-09-29 β€” go forth and count your sessions, bestie, ily πŸ’œπŸ¦‹βœ¨

πŸ“¦ where this page comes from