SSL_set_tmp_ecdh,
SSL_CTX_set_tmp_ecdh,
SSL_set_ecdh_auto,
SSL_CTX_set_ecdh_auto,
SSL_set_tmp_ecdh_callback,
SSL_CTX_set_tmp_ecdh_callback —
select a curve for ECDH ephemeral key exchange
#include
<openssl/ssl.h>
long
SSL_set_tmp_ecdh(SSL *ssl,
EC_KEY *ecdh);
long
SSL_CTX_set_tmp_ecdh(SSL_CTX
*ctx, EC_KEY *ecdh);
long
SSL_set_ecdh_auto(SSL *ssl,
int state);
long
SSL_CTX_set_ecdh_auto(SSL_CTX
*ctx, int state);
void
SSL_set_tmp_ecdh_callback(SSL
*ssl, EC_KEY *(*ecdh)(SSL *ssl, int is_export, int
keylength));
void
SSL_CTX_set_tmp_ecdh_callback(SSL_CTX
*ctx, EC_KEY *(*ecdh)(SSL *ssl, int is_export, int
keylength));
SSL_set_tmp_ecdh() and
SSL_CTX_set_tmp_ecdh() return 1 on success or 0 on
failure.
SSL_set_ecdh_auto(),
SSL_CTX_set_ecdh_auto(),
SSL_set_tmp_ecdh_callback(), and
SSL_CTX_set_tmp_ecdh_callback() always return 1.
SSL_set_tmp_ecdh(),
SSL_CTX_set_tmp_ecdh(),
SSL_set_tmp_ecdh_callback(), and
SSL_CTX_set_tmp_ecdh_callback() first appeared in
OpenSSL 0.9.8 and have been available since OpenBSD
4.5.
SSL_CTX_set_ecdh_auto() and
SSL_set_ecdh_auto() first appeared in OpenSSL 1.0.2
and have been available since OpenBSD 5.7.