diff options
author | Daniel Stenberg <daniel@haxx.se> | 2014-08-07 12:02:34 +0200 |
---|---|---|
committer | Daniel Stenberg <daniel@haxx.se> | 2014-08-07 12:40:31 +0200 |
commit | 7d2f61f66ab4e047fc9aefc2effc1ac6d340a66a (patch) | |
tree | 203d77cca9db1f0a7e4df1cd0fe0409419743ba3 /lib/vtls | |
parent | 40e13829afab4999543f1baf4fa2ca7390206f44 (diff) |
openssl: replace call to OPENSSL_config
OPENSSL_config() is "strongly recommended" to use but unfortunately that
function makes an exit() call on wrongly formatted config files which
makes it hard to use in some situations. OPENSSL_config() itself calls
CONF_modules_load_file() and we use that instead and we ignore its
return code!
Reported-by: Jan Ehrhardt
Bug: http://curl.haxx.se/bug/view.cgi?id=1401
Diffstat (limited to 'lib/vtls')
-rw-r--r-- | lib/vtls/openssl.c | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/lib/vtls/openssl.c b/lib/vtls/openssl.c index fa879d974..62d86c017 100644 --- a/lib/vtls/openssl.c +++ b/lib/vtls/openssl.c @@ -741,7 +741,17 @@ int Curl_ossl_init(void) return 0; OpenSSL_add_all_algorithms(); - OPENSSL_config(NULL); + + + /* OPENSSL_config(NULL); is "strongly recommended" to use but unfortunately + that function makes an exit() call on wrongly formatted config files + which makes it hard to use in some situations. OPENSSL_config() itself + calls CONF_modules_load_file() and we use that instead and we ignore + its return code! */ + + (void)CONF_modules_load_file(NULL, NULL, + CONF_MFLAGS_DEFAULT_SECTION| + CONF_MFLAGS_IGNORE_MISSING_FILE); return 1; } |