SSL_SET_SSL_CTX(3) | Library Functions Manual | SSL_SET_SSL_CTX(3)

# NAME

`SSL_set_SSL_CTX` — modify an SSL connection object to use another context

# SYNOPSIS

library “libssl” libcrypto
`#include <openssl/ssl.h>`

SSL_CTX *
`SSL_set_SSL_CTX`(SSL *ssl, SSL_CTX* ctx);

# DESCRIPTION

`SSL_set_SSL_CTX`() causes ssl to use the context ctx.

If ctx is `NULL`, ssl reverts to using the context that it was initially created from with SSL_new(3).

If ssl already uses ctx, no action occurs.

# RETURN VALUES

`SSL_set_SSL_CTX`() returns an internal pointer to the context that ssl is using as a result of the call, or `NULL` if memory allocation fails.

# SEE ALSO

ssl(3), SSL_clear(3), SSL_CTX_new(3), SSL_get_SSL_CTX(3), SSL_new(3), SSL_set_security_level(3)

# HISTORY

`SSL_set_SSL_CTX`() first appeared in OpenSSL 0.9.8f and has been available since OpenBSD 4.5.

June 8, 2025 | Debian