SSL_CTX_SET_TMP_DH_CALLBACK(3ssl) OpenSSL SSL_CTX_SET_TMP_DH_CALLBACK(3ssl) SSL_CTX_set_dh_auto, SSL_set_dh_auto, SSL_CTX_set0_tmp_dh_pkey, SSL_set0_tmp_dh_pkey, SSL_CTX_set_tmp_dh_callback, SSL_CTX_set_tmp_dh, SSL_set_tmp_dh_callback, SSL_set_tmp_dh - DH #include long SSL_CTX_set_dh_auto(SSL_CTX *ctx, int onoff); long SSL_set_dh_auto(SSL *s, int onoff); int SSL_CTX_set0_tmp_dh_pkey(SSL_CTX *ctx, EVP_PKEY *dhpkey); int SSL_set0_tmp_dh_pkey(SSL *s, EVP_PKEY *dhpkey); OpenSSL 3.0 OPENSSL_API_COMPAT openssl_user_macros(7): void SSL_CTX_set_tmp_dh_callback(SSL_CTX *ctx, DH *(*tmp_dh_callback)(SSL *ssl, int is_export, int keylength)); long SSL_CTX_set_tmp_dh(SSL_CTX *ctx, DH *dh); void SSL_set_tmp_dh_callback(SSL *ctx, DH *(*tmp_dh_callback)(SSL *ssl, int is_export, int keylength)); long SSL_set_tmp_dh(SSL *ssl, DH *dh); . Diffie-Hellman (DH) . DH / . ( ) DH . DH DH. DH () . DH DH ( DH) DH. DH . DH . DH . DH OpenSSL. SSL_CTX_set_dh_auto() SSL_set_dh_auto() OpenSSL DH SSL_CTX SSL . 2 1 onoff . onoff 2 DH 1024 SSL_CTX SSL SSL_CTX_set_security_level(3) 0 1. 0 . . DH "auto" . ( PSK) . DH . . DH SSL_CTX_set0_tmp_dh_pkey() SSL_set0_tmp_dh_pkey() SSL_CTX SSL . dhpkey EVP_PKEY DH. dhpkey SSL_CTX SSL . SSL_CTX_set_tmp_dh() SSL_set_tmp_dh() SSL_CTX_set0_tmp_dh_pkey() SSL_set0_tmp_dh_pkey() DH DH dh DH . "" SSL_CTX_set0_tmp_dh_pkey() SSL_set0_tmp_dh_pkey() . DH SSL_CTX_set_tmp_dh_callback() SSL_set_tmp_dh_callback() SSL_CTX SSL . . "" SSL_CTX_set0_tmp_dh_pkey() SSL_set0_tmp_dh_pkey() . DH . SSL . OpenSSL is_export keylength . OpenSSL . DH. DH . / 1 0 . ssl(7), SSL_CTX_set_cipher_list(3), SSL_CTX_set_options(3), openssl-ciphers(1), openssl-dhparam(1) 2001-2025 OpenSSL. . Apache 2.0 ( ""). . LICENSE . 3 . . : . 3.6.2 7 2026 SSL_CTX_SET_TMP_DH_CALLBACK(3ssl)