SSL_CIPHER_GET_NAME(3) | Library Functions Manual | SSL_CIPHER_GET_NAME(3) |
SSL_CIPHER_get_name
,
SSL_CIPHER_get_bits
,
SSL_CIPHER_get_version
,
SSL_CIPHER_description
— get
SSL_CIPHER properties
#include
<openssl/ssl.h>
const char *
SSL_CIPHER_get_name
(const
SSL_CIPHER *cipher);
int
SSL_CIPHER_get_bits
(const
SSL_CIPHER *cipher, int
*alg_bits);
char *
SSL_CIPHER_get_version
(const
SSL_CIPHER *cipher);
char *
SSL_CIPHER_description
(const
SSL_CIPHER *cipher, char
*buf, int
size);
SSL_CIPHER_get_name
()
returns a pointer to the name of cipher. If the
cipher is NULL
, it returns
"(NONE)".
SSL_CIPHER_get_bits
()
returns the number of secret bits used for cipher. If
alg_bits is not NULL
, it
contains the number of bits processed by the chosen algorithm. If
cipher is NULL
, 0 is
returned.
SSL_CIPHER_get_version
()
returns a string which indicates the SSL/TLS protocol version that first
defined the cipher. This is currently "TLSv1/SSLv3". In some cases
it should possibly return "TLSv1.2" but the function does not; use
SSL_CIPHER_description(3)
instead. If cipher is NULL
,
"(NONE)" is returned.
SSL_CIPHER_description
()
returns a textual description of the cipher used into the buffer
buf of length len provided. If
buf is NULL
, a buffer is
allocated using
asprintf(3); that buffer
should be freed using the
free(3) function. If
len is too small, or if buf is
NULL
and the allocation fails, a pointer to the
string "Buffer too small" is returned.
The string returned by
SSL_CIPHER_description
()
consists of several fields separated by whitespace:
An example for the output of
SSL_CIPHER_description
():
ECDHE-RSA-AES256-GCM-SHA256 TLSv1.2 Kx=ECDH Au=RSA Enc=AESGCM(256) Mac=AEAD
A complete list can be retrieved by invoking the following command:
$ openssl ciphers -v ALL
openssl(1), ssl(3), SSL_get_ciphers(3), SSL_get_current_cipher(3)
If SSL_CIPHER_description
() is called with
cipher being NULL
, the library
crashes.
If SSL_CIPHER_description
() cannot handle
a built-in cipher, the according description of the cipher property is
"unknown". This case should not occur.
November 29, 2016 | OpenBSD-6.1 |