55 #include <openssl/rsa.h>
60 #if OPENSSL_VERSION_NUMBER < 0x10100000L
64 RSA *tls_tmp_rsa_cb(SSL *unused_ssl,
int export,
int keylength)
74 if (!export || keylength != 512) {
75 msg_warn(
"%sexport %d-bit ephemeral RSA key requested",
76 export ?
"" :
"non-", keylength);
79 #if OPENSSL_VERSION_NUMBER >= 0x10000000L
83 if (e != 0 && BN_set_word(e, RSA_F4) && (rsa_tmp = RSA_new()) != 0)
84 if (!RSA_generate_key_ex(rsa_tmp, keylength, e, 0)) {
93 rsa_tmp = RSA_generate_key(keylength, RSA_F4, NULL, NULL);
105 int main(
int unused_argc,
char *
const argv[])
112 #if OPENSSL_VERSION_NUMBER < 0x10100000L
118 rsa = tls_tmp_rsa_cb(0, 1, 512);
119 ok = rsa != 0 && RSA_size(rsa) == 512 / 8;
120 ok = ok && PEM_write_RSAPrivateKey(stdout, rsa, 0, 0, 0, 0, 0);
124 ok = ok && tls_tmp_rsa_cb(0, 0, 512) == 0;
125 ok = ok && tls_tmp_rsa_cb(0, 1, 1024) == 0;
int main(int argc, char **argv)
void msg_warn(const char *fmt,...)
void msg_vstream_init(const char *name, VSTREAM *vp)