NAME
SSL_get_ciphers
,
SSL_CTX_get_ciphers
,
SSL_get_cipher_list
—
get list of available
SSL_CIPHERs
SYNOPSIS
#include
<openssl/ssl.h>
STACK_OF(SSL_CIPHER) *
SSL_get_ciphers
(const
SSL *ssl);
STACK_OF(SSL_CIPHER) *
SSL_CTX_get_ciphers
(const
SSL_CTX *ctx);
const char *
SSL_get_cipher_list
(const
SSL *ssl, int
priority);
DESCRIPTION
SSL_get_ciphers
()
returns the stack of available SSL_CIPHERs for
ssl, sorted by preference. If
ssl is NULL
or no ciphers are
available, NULL
is returned.
SSL_CTX_get_ciphers
()
returns the stack of available SSL_CIPHERs for
ctx.
SSL_get_ciphers
()
and SSL_CTX_get_ciphers
() return pointers to
internal cipher stacks, which will be freed later on when the
SSL or SSL_CTX object is freed.
Therefore, the calling code must not free the return value itself.
The details of the ciphers obtained by
SSL_get_ciphers
()
and SSL_CTX_get_ciphers
() can be obtained using the
SSL_CIPHER_get_name(3) family of functions.
SSL_get_cipher_list
()
returns a pointer to the name of the SSL_CIPHER listed
for ssl with priority. If
ssl is NULL
, no ciphers are
available, or there are fewer ciphers than priority
available, NULL
is returned.
Call
SSL_get_cipher_list
()
with priority starting from 0 to obtain the sorted
list of available ciphers, until NULL
is
returned.
SEE ALSO
HISTORY
SSL_get_ciphers
() and
SSL_get_cipher_list
() appeared before SSLeay 0.8 and
have been available since OpenBSD 2.4.
SSL_CTX_get_ciphers
() first appeared in
OpenSSL 1.1.0 and has been available since OpenBSD
6.3.