SSL_SET_TMP_RSA_CALLBACK(3ssl)
π SSL_CTX_SET_TMP_RSA_CALL(3) β like, the Library Functions Manual edition π
okay so bestie, gather round, because this one is a ride. This page lives in the Library Functions Manual, and it's about a whole little family of RSA key-exchange functions that are, and I say this with love, completely over. π
β¨ NAME β¨
SSL_CTX_set_tmp_rsa_callback, SSL_CTX_set_tmp_rsa, SSL_CTX_need_tmp_RSA, SSL_set_tmp_rsa_callback, SSL_set_tmp_rsa, SSL_need_tmp_RSA β the gang that used to handle RSA keys for ephemeral key exchange π¦
πΈ SYNOPSIS πΈ
#include <openssl/ssl.h>
void
SSL_CTX_set_tmp_rsa_callback(SSL_CTX *ctx,
RSA *(*tmp_rsa_callback)(SSL *ssl, int is_export, int keylength));
long
SSL_CTX_set_tmp_rsa(SSL_CTX *ctx, RSA *rsa);
long
SSL_CTX_need_tmp_RSA(SSL_CTX *ctx);
void
SSL_set_tmp_rsa_callback(SSL_CTX *ctx,
RSA *(*tmp_rsa_callback)(SSL *ssl, int is_export, int keylength));
long
SSL_set_tmp_rsa(SSL *ssl, RSA *rsa);
long
SSL_need_tmp_RSA(SSL *ssl);
(yes, the signatures are exactly like that, don't come for me, I just report what the page says π)
π¦ DESCRIPTION π¦
okay so here's the tea β β these functions mattered only for deliberately insecure RSA authentication that was mandated by historical U.S. export restrictions. Like, the government said "you may only ship the weak one" and everyone had to nod and smile. π That era is gone, and so is the point of these functions.
So: they are all deprecated and they have no effect, with one tiny dramatic exception β SSL_CTX_set_tmp_rsa_callback(), SSL_CTX_set_tmp_rsa(), SSL_set_tmp_rsa_callback(), and SSL_set_tmp_rsa() will issue error messages when you call them. not them being messy on main π
bestie, real talk: don't use these. they're deprecated, they do nothing, and four of them will literally yell at you. the vibe check is failed, the energy is not main character. β¨
π RETURN VALUES π
These functions always return 0, indicating failure. Every time. No cap. Not even a little success arc. π
π SEE ALSO π
ssl(3)SSL_CTX_set_cipher_list(3)SSL_CTX_set_options(3)SSL_CTX_set_tmp_dh_callback(3)SSL_new(3)SSL_set_tmp_ecdh(3)
go read those, they're giving much more useful energy fr fr π«Ά
β HISTORY β
So the timeline is literally:
SSL_CTX_set_tmp_rsa_callback(),SSL_CTX_set_tmp_rsa(), andSSL_CTX_need_tmp_RSA()first appeared in SSLeay 0.8.0, and have been available since OpenBSD 2.4. ancient. iconic. vintage. πΊSSL_set_tmp_rsa_callback(),SSL_set_tmp_rsa(), andSSL_need_tmp_RSA()first appeared in OpenSSL 0.9.2b, and have been available since OpenBSD 2.6. also ancient, slightly later. π
and that's the whole page!! mwah π this lil rewrite was brought to you by Debian, dated March 29, 2022, and the original page signs off as SSL_CTX_SET_TMP_RSA_CALLBACK(3). slay, stay safe, don't call deprecated functions πβ¨
π¦ where this page comes from
- opensuse-leap 16.0: libressl-devel-doc 4.1.0-bp160.1.1 Β· OpenSSL
- Copyright (c) 2001, 2006, 2013 The OpenSSL Project. All rights reserved
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms