From: Jérémie Galarneau Date: Wed, 10 Apr 2019 20:37:42 +0000 (-0400) Subject: Fix tests: NULL pointer dereference in ust channel unit tests X-Git-Tag: v2.12.0-rc1~615 X-Git-Url: https://git.lttng.org/?p=lttng-tools.git;a=commitdiff_plain;h=30b66335dc3656fc79129b9e7dfe1cf13ae578e1 Fix tests: NULL pointer dereference in ust channel unit tests The test_create_ust_channel() test case erroneously checks for a NULL session instead of a channel. This can result in a NULL pointer dereference on failure to create a ust channel. The scope of usess is reduced to prevent similar mistakes in the future. Moving 'dom' has made it obvious that this variable is unused. Hence, it is removed. Signed-off-by: Jérémie Galarneau --- diff --git a/tests/unit/test_ust_data.c b/tests/unit/test_ust_data.c index 61e2c3c6e..b4e927c9d 100644 --- a/tests/unit/test_ust_data.c +++ b/tests/unit/test_ust_data.c @@ -60,9 +60,6 @@ static const char alphanum[] = "abcdefghijklmnopqrstuvwxyz"; static char random_string[RANDOM_STRING_LEN]; -static struct ltt_ust_session *usess; -static struct lttng_domain dom; - /* * Return random string of 10 characters. * Not thread-safe. @@ -82,9 +79,9 @@ static char *get_random_string(void) static void test_create_one_ust_session(void) { - dom.type = LTTNG_DOMAIN_UST; + struct ltt_ust_session *usess = + trace_ust_create_session(42); - usess = trace_ust_create_session(42); ok(usess != NULL, "Create UST session"); if (!usess) { @@ -117,8 +114,8 @@ static void test_create_ust_channel(void) uchan = trace_ust_create_channel(&attr, LTTNG_DOMAIN_UST); ok(uchan != NULL, "Create UST channel"); - if (!usess) { - skip(1, "UST session is null"); + if (!uchan) { + skip(1, "UST channel is null"); return; }