1
0
mirror of https://github.com/apache/httpd.git synced 2025-08-08 15:02:10 +03:00

Solve a pretty horrific bug in SSLCryptoDevice and other places where

the config cmd processors should be examining the SSL context.  We must
  initialize the SSL library before we can actually obtain any useful
  information from the SSL library.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@100107 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
William A. Rowe Jr
2003-05-30 20:58:55 +00:00
parent fb9c4b137c
commit 282d19b590
2 changed files with 13 additions and 15 deletions

View File

@@ -235,8 +235,17 @@ static int ssl_hook_pre_config(apr_pool_t *pconf,
apr_pool_t *plog, apr_pool_t *plog,
apr_pool_t *ptemp) apr_pool_t *ptemp)
{ {
/* Preregister the malloc callbacks so cmds can make library calls */ /* We must register the library in full, to ensure our configuration
* code can successfully test the SSL environment.
*/
CRYPTO_malloc_init(); CRYPTO_malloc_init();
ERR_load_crypto_strings();
OpenSSL_add_all_algorithms();
#if HAVE_ENGINE_LOAD_BUILTIN_ENGINES
ENGINE_load_builtin_engines();
#endif
OPENSSL_load_builtin_modules();
SSL_load_error_strings();
/* Register us to handle mod_log_config %c/%x variables */ /* Register us to handle mod_log_config %c/%x variables */
ssl_var_log_config_register(pconf); ssl_var_log_config_register(pconf);

View File

@@ -106,18 +106,6 @@ static void ssl_add_version_components(apr_pool_t *p,
} }
/*
* Initialize SSL library
*/
static void ssl_init_SSLLibrary(server_rec *s)
{
ap_log_error(APLOG_MARK, APLOG_INFO, 0, s,
"Init: Initializing %s library", SSL_LIBRARY_NAME);
SSL_load_error_strings();
SSL_library_init();
}
/* /*
* Handle the Temporary RSA Keys and DH Params * Handle the Temporary RSA Keys and DH Params
*/ */
@@ -274,12 +262,13 @@ int ssl_init_Module(apr_pool_t *p, apr_pool_t *plog,
ssl_init_Engine(base_server, p); ssl_init_Engine(base_server, p);
#endif #endif
ssl_init_SSLLibrary(base_server);
#if APR_HAS_THREADS #if APR_HAS_THREADS
ssl_util_thread_setup(p); ssl_util_thread_setup(p);
#endif #endif
ap_log_error(APLOG_MARK, APLOG_INFO, 0, s,
"Init: Initialized %s library", SSL_LIBRARY_NAME);
/* /*
* Seed the Pseudo Random Number Generator (PRNG) * Seed the Pseudo Random Number Generator (PRNG)
* only need ptemp here; nothing inside allocated from the pool * only need ptemp here; nothing inside allocated from the pool