libressl-SSL_get_current_cipher(3)

libressl-SSL_get_current_cipher3

Get ssl_cipher of a connection

Usage

SSL Library (libssl, -lssl) libcrypto

#include <openssl/ssl.h>

const SSL_CIPHER *

SSL_get_current_cipher(const SSL *ssl);

const char *

SSL_get_cipher(const SSL *ssl);

const char *

SSL_get_cipher_name(const SSL *ssl);

int

SSL_get_cipher_bits(const SSL *ssl, int *np);

char *

SSL_get_cipher_version(const SSL *ssl);

Overview

SSL_get_current_cipher() returns a pointer to an SSL_CIPHER object containing the description of the actually used cipher of a connection established with the ssl object. See SSL_CIPHER_get_name(3) for more details.

SSL_get_cipher_name() obtains the name of the currently used cipher. SSL_get_cipher() is identical to SSL_get_cipher_name().

SSL_get_cipher_bits() obtains the number of secret/algorithm bits used and SSL_get_cipher_version() returns the protocol name.

SSL_get_cipher(), SSL_get_cipher_name(), SSL_get_cipher_bits(), and SSL_get_cipher_version() are implemented as macros.

Return values

SSL_get_current_cipher() returns the cipher actually used, or NULL if no session has been established.

History

SSL_get_cipher() appeared in SSLeay 0.4 or earlier. SSL_get_cipher_bits() first appeared in SSLeay 0.6.4. SSL_get_cipher_name() and SSL_get_cipher_version() first appeared in SSLeay 0.8.0. SSL_get_current_cipher() first appeared in SSLeay 0.8.1. These functions have been available since OpenBSD 2.4.

From libressl 4.4.0-1 in Arch Linux 2026-11-01. Parsed by carta from the page's mdoc source.