diff options
author | FdaSilvaYY <fdasilvayy@gmail.com> | 2016-01-29 19:53:28 +0100 |
---|---|---|
committer | Rich Salz <rsalz@openssl.org> | 2016-02-27 17:05:32 -0500 |
commit | 7bcdf4ef78270c9818fde45816102c1b1288b7c7 (patch) | |
tree | 9a71705144d520162e565a47d99e70b9e42e63a7 | |
parent | e9cf5f03666bb82f0184e4f013702d0b164afdca (diff) | |
download | openssl-7bcdf4ef78270c9818fde45816102c1b1288b7c7.tar.gz |
Fix two possible leaks
Backport of 98637bd
Reviewed-by: Kurt Roeckx <kurt@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
-rw-r--r-- | crypto/dso/dso_lib.c | 1 | ||||
-rw-r--r-- | crypto/engine/eng_dyn.c | 4 |
2 files changed, 4 insertions, 1 deletions
diff --git a/crypto/dso/dso_lib.c b/crypto/dso/dso_lib.c index 3312450eae..2beb7c1ba5 100644 --- a/crypto/dso/dso_lib.c +++ b/crypto/dso/dso_lib.c @@ -122,6 +122,7 @@ DSO *DSO_new_method(DSO_METHOD *meth) ret->meth = meth; ret->references = 1; if ((ret->meth->init != NULL) && !ret->meth->init(ret)) { + sk_void_free(ret->meth_data); OPENSSL_free(ret); ret = NULL; } diff --git a/crypto/engine/eng_dyn.c b/crypto/engine/eng_dyn.c index 3169b09ad8..40f30e9d58 100644 --- a/crypto/engine/eng_dyn.c +++ b/crypto/engine/eng_dyn.c @@ -243,8 +243,10 @@ static int dynamic_set_data_ctx(ENGINE *e, dynamic_data_ctx **ctx) * If we lost the race to set the context, c is non-NULL and *ctx is the * context of the thread that won. */ - if (c) + if (c) { + sk_OPENSSL_STRING_free(c->dirs); OPENSSL_free(c); + } return 1; } |