Don't ignore config_name parameter passed to OPENSSL_config(). Use

"openssl_conf" in config file if config_name variable is missing.
This commit is contained in:
Dr. Stephen Henson 2007-04-09 11:45:54 +00:00
parent 0cc361f3e7
commit d318fb79d2
3 changed files with 8 additions and 6 deletions

View file

@ -115,6 +115,7 @@ typedef void conf_finish_func(CONF_IMODULE *md);
#define CONF_MFLAGS_SILENT 0x4
#define CONF_MFLAGS_NO_DSO 0x8
#define CONF_MFLAGS_IGNORE_MISSING_FILE 0x10
#define CONF_MFLAGS_DEFAULT_SECTION 0x20
int CONF_set_default_method(CONF_METHOD *meth);
void CONF_set_nconf(CONF *conf,LHASH *hash);

View file

@ -126,17 +126,18 @@ int CONF_modules_load(const CONF *cnf, const char *appname,
{
STACK_OF(CONF_VALUE) *values;
CONF_VALUE *vl;
char *vsection;
char *vsection = NULL;
int ret, i;
if (!cnf)
return 1;
if (appname == NULL)
appname = "openssl_conf";
if (appname)
vsection = NCONF_get_string(cnf, NULL, appname);
vsection = NCONF_get_string(cnf, NULL, appname);
if (!appname || (!vsection && (flags & CONF_MFLAGS_DEFAULT_SECTION)))
vsection = NCONF_get_string(cnf, NULL, "openssl_conf");
if (!vsection)
{

View file

@ -88,8 +88,8 @@ void OPENSSL_config(const char *config_name)
ERR_clear_error();
if (CONF_modules_load_file(NULL, NULL,
CONF_MFLAGS_IGNORE_MISSING_FILE) <= 0)
if (CONF_modules_load_file(NULL, config_name,
CONF_MFLAGS_DEFAULT_SECTION|CONF_MFLAGS_IGNORE_MISSING_FILE) <= 0)
{
BIO *bio_err;
ERR_load_crypto_strings();