Add a config option to disable automatic config loading

./config no-autoload-config

Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/5959)
This commit is contained in:
Bernd Edlinger 2018-04-15 12:02:25 +02:00
parent a051af0e75
commit dbabc86296
4 changed files with 13 additions and 1 deletions

View file

@ -325,6 +325,7 @@ my @disablables = (
"async", "async",
"autoalginit", "autoalginit",
"autoerrinit", "autoerrinit",
"autoload-config",
"bf", "bf",
"blake2", "blake2",
"camellia", "camellia",

View file

@ -276,6 +276,10 @@
error strings. For a statically linked application this may error strings. For a statically linked application this may
be undesirable if small executable size is an objective. be undesirable if small executable size is an objective.
no-autoload-config
Don't automatically load the default openssl.cnf file.
Typically OpenSSL will automatically load a system config
file which configures default ssl options.
no-capieng no-capieng
Don't build the CAPI engine. This option will be forced if Don't build the CAPI engine. This option will be forced if

View file

@ -195,7 +195,9 @@ int OPENSSL_init_ssl(uint64_t opts, const OPENSSL_INIT_SETTINGS * settings)
} }
if (!OPENSSL_init_crypto(opts if (!OPENSSL_init_crypto(opts
#ifndef OPENSSL_NO_AUTOLOAD_CONFIG
| OPENSSL_INIT_LOAD_CONFIG | OPENSSL_INIT_LOAD_CONFIG
#endif
| OPENSSL_INIT_ADD_ALL_CIPHERS | OPENSSL_INIT_ADD_ALL_CIPHERS
| OPENSSL_INIT_ADD_ALL_DIGESTS, | OPENSSL_INIT_ADD_ALL_DIGESTS,
settings)) settings))

View file

@ -467,6 +467,11 @@ static int test_handshake(int idx)
} }
} }
#ifdef OPENSSL_NO_AUTOLOAD_CONFIG
if (!TEST_true(OPENSSL_init_ssl(OPENSSL_INIT_LOAD_CONFIG, NULL)))
goto err;
#endif
if (!TEST_ptr(server_ctx) if (!TEST_ptr(server_ctx)
|| !TEST_ptr(client_ctx) || !TEST_ptr(client_ctx)
|| !TEST_int_gt(CONF_modules_load(conf, test_app, 0), 0)) || !TEST_int_gt(CONF_modules_load(conf, test_app, 0), 0))