diff options
-rw-r--r-- | crypto/conf/conf_mod.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/crypto/conf/conf_mod.c b/crypto/conf/conf_mod.c index cef805dfca..604518aef5 100644 --- a/crypto/conf/conf_mod.c +++ b/crypto/conf/conf_mod.c @@ -286,8 +286,13 @@ static CONF_MODULE *module_add(DSO *dso, const char *name, tmod->name = OPENSSL_strdup(name); tmod->init = ifunc; tmod->finish = ffunc; + if (tmod->name == NULL) { + OPENSSL_free(tmod); + return NULL; + } if (!sk_CONF_MODULE_push(supported_modules, tmod)) { + OPENSSL_free(tmod->name); OPENSSL_free(tmod); return NULL; } |