From 587f9fd0f00d91c3c033245db087feb0d948020b Mon Sep 17 00:00:00 2001 From: =?utf8?q?J=C3=A9r=C3=A9mie=20Galarneau?= Date: Thu, 11 May 2017 16:16:12 -0400 Subject: [PATCH] Fix: leak of deserialized trigger sent from client MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Deserialized triggers may be leaked on error when registered or unregistered by the session daemon. Reported-by: Coverity Scan CID 1374801 (#1 of 1): Resource leak (RESOURCE_LEAK) Signed-off-by: Jérémie Galarneau --- src/bin/lttng-sessiond/cmd.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/bin/lttng-sessiond/cmd.c b/src/bin/lttng-sessiond/cmd.c index f3ff25642..c4e4ccfbe 100644 --- a/src/bin/lttng-sessiond/cmd.c +++ b/src/bin/lttng-sessiond/cmd.c @@ -3587,7 +3587,10 @@ int cmd_register_trigger(struct command_ctx *cmd_ctx, int sock, ret = notification_thread_command_register_trigger(notification_thread, trigger); + /* Ownership of trigger was transferred. */ + trigger = NULL; end: + lttng_trigger_destroy(trigger); lttng_dynamic_buffer_reset(&trigger_buffer); return ret; } @@ -3630,6 +3633,7 @@ int cmd_unregister_trigger(struct command_ctx *cmd_ctx, int sock, ret = notification_thread_command_unregister_trigger(notification_thread, trigger); end: + lttng_trigger_destroy(trigger); lttng_dynamic_buffer_reset(&trigger_buffer); return ret; } -- 2.34.1