Scroll to navigation

SSL_GET_VERSION(3) Library Functions Manual SSL_GET_VERSION(3)

NAME

SSL_get_version, SSL_is_dtls, SSL_versionget the protocol information of a connection

SYNOPSIS

#include <openssl/ssl.h>

const char *
SSL_get_version(const SSL *ssl);

int
SSL_is_dtls(const SSL *ssl);

int
SSL_version(const SSL *ssl);

DESCRIPTION

() returns the name of the protocol used for the connection ssl.

() returns 1 if the connection is using DTLS, 0 if not.

() returns an integer constant representing that protocol.

These functions only return reliable results after the initial handshake has been completed.

RETURN VALUES

The following strings or integers can be returned by SSL_get_version() and SSL_version():

"TLSv1" or TLS1_VERSION
The connection uses the TLSv1.0 protocol.
"TLSv1.1" or TLS1_1_VERSION
The connection uses the TLSv1.1 protocol.
"TLSv1.2" or TLS1_2_VERSION
The connection uses the TLSv1.2 protocol.
"TLSv1.3" or TLS1_3_VERSION
The connection uses the TLSv1.3 protocol.
"DTLSv1" or DTLS1_VERSION
The connection uses the Datagram Transport Layer Security 1.0 protocol.
"DTLSv1.2" or DTLS1_2_VERSION
The connection uses the Datagram Transport Layer Security 1.2 protocol.
"unknown"
This indicates an unknown protocol version; it cannot currently happen with LibreSSL.

SSL_is_dtls() returns 1 if the connection uses DTLS, 0 if not.

SEE ALSO

ssl(3)

HISTORY

SSL_get_version() and SSL_version() first appeared in SSLeay 0.8.0 and have been available since OpenBSD 2.4.

SSL_is_dtls() first appeared in OpenSSL 1.1.0 and has been available since OpenBSD 6.9.

April 15, 2021 Linux 6.4.0-150600.23.25-default