mirror of
https://github.com/apache/httpd.git
synced 2025-08-08 15:02:10 +03:00
fix logic from last commit, need to always try importing _both_ rsa
and dsa git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94256 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
@@ -807,6 +807,7 @@ void ssl_init_ConfigureServer(server_rec *s,
|
|||||||
EVP_PKEY *pkey;
|
EVP_PKEY *pkey;
|
||||||
SSL_CTX *ctx;
|
SSL_CTX *ctx;
|
||||||
int i;
|
int i;
|
||||||
|
int have_rsa, have_dsa;
|
||||||
|
|
||||||
ssl_init_check_server(s, p, ptemp, sc);
|
ssl_init_check_server(s, p, ptemp, sc);
|
||||||
|
|
||||||
@@ -836,9 +837,10 @@ void ssl_init_ConfigureServer(server_rec *s,
|
|||||||
rsa_id = ssl_asn1_table_keyfmt(ptemp, vhost_id, SSL_AIDX_RSA);
|
rsa_id = ssl_asn1_table_keyfmt(ptemp, vhost_id, SSL_AIDX_RSA);
|
||||||
dsa_id = ssl_asn1_table_keyfmt(ptemp, vhost_id, SSL_AIDX_DSA);
|
dsa_id = ssl_asn1_table_keyfmt(ptemp, vhost_id, SSL_AIDX_DSA);
|
||||||
|
|
||||||
if (!(ssl_server_import_cert(s, sc, rsa_id, SSL_AIDX_RSA) ||
|
have_rsa = ssl_server_import_cert(s, sc, rsa_id, SSL_AIDX_RSA);
|
||||||
ssl_server_import_cert(s, sc, dsa_id, SSL_AIDX_DSA)))
|
have_dsa = ssl_server_import_cert(s, sc, dsa_id, SSL_AIDX_DSA);
|
||||||
{
|
|
||||||
|
if (!(have_rsa || have_dsa)) {
|
||||||
ssl_log(s, SSL_LOG_ERROR|SSL_INIT,
|
ssl_log(s, SSL_LOG_ERROR|SSL_INIT,
|
||||||
"Oops, no RSA or DSA server certificate found?!");
|
"Oops, no RSA or DSA server certificate found?!");
|
||||||
ssl_log(s, SSL_LOG_ERROR|SSL_INIT,
|
ssl_log(s, SSL_LOG_ERROR|SSL_INIT,
|
||||||
@@ -851,9 +853,10 @@ void ssl_init_ConfigureServer(server_rec *s,
|
|||||||
ssl_check_public_cert(s, ptemp, sc->pPublicCert[i], i);
|
ssl_check_public_cert(s, ptemp, sc->pPublicCert[i], i);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!(ssl_server_import_key(s, sc, rsa_id, SSL_AIDX_RSA) ||
|
have_rsa = ssl_server_import_key(s, sc, rsa_id, SSL_AIDX_RSA);
|
||||||
ssl_server_import_key(s, sc, dsa_id, SSL_AIDX_DSA)))
|
have_dsa = ssl_server_import_key(s, sc, dsa_id, SSL_AIDX_DSA);
|
||||||
{
|
|
||||||
|
if (!(have_rsa || have_dsa)) {
|
||||||
ssl_log(s, SSL_LOG_ERROR|SSL_INIT,
|
ssl_log(s, SSL_LOG_ERROR|SSL_INIT,
|
||||||
"Oops, no RSA or DSA server private key found?!");
|
"Oops, no RSA or DSA server private key found?!");
|
||||||
ssl_die();
|
ssl_die();
|
||||||
|
Reference in New Issue
Block a user