From 556801ec367543a8d534e55ecd11a977642bcee6 Mon Sep 17 00:00:00 2001 From: Pavel Březina Date: Tue, 10 Nov 2015 12:34:11 +0100 Subject: SUDO: fix potential memory leak in sdap_sudo_init MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Reviewed-by: Jakub Hrozek Reviewed-by: Lukáš Slebodník --- src/providers/ldap/sdap_sudo.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/providers/ldap/sdap_sudo.c b/src/providers/ldap/sdap_sudo.c index 97c71b745..ed4ecc674 100644 --- a/src/providers/ldap/sdap_sudo.c +++ b/src/providers/ldap/sdap_sudo.c @@ -76,7 +76,7 @@ int sdap_sudo_init(struct be_ctx *be_ctx, if (ret != EOK) { DEBUG(SSSDBG_OP_FAILURE, "Cannot get SUDO options [%d]: %s\n", ret, strerror(ret)); - return ret; + goto done; } req = sdap_sudo_get_hostinfo_send(sudo_ctx, id_ctx->opts, be_ctx); @@ -98,7 +98,14 @@ int sdap_sudo_init(struct be_ctx *be_ctx, tevent_req_set_callback(req, sdap_sudo_get_hostinfo_done, sudo_ctx); } - return EOK; + ret = EOK; + +done: + if (ret != EOK) { + talloc_free(sudo_ctx); + } + + return ret; } static void sdap_sudo_get_hostinfo_done(struct tevent_req *req) -- cgit