Fix: tests: gen-ust-events-ns: Uninitialized argument value
authorFrancis Deslauriers <francis.deslauriers@efficios.com>
Thu, 22 Apr 2021 21:24:57 +0000 (17:24 -0400)
committerJérémie Galarneau <jeremie.galarneau@efficios.com>
Tue, 11 May 2021 15:22:06 +0000 (11:22 -0400)
If both `if (snprintf(...` of the `get_ns_inum()` function fail, the
function will not uninitialize the `ns_inum` output parameter and still
return 0. Leading to the argument `ns1` of debug_printf() being used
uninitialized.

Reported-by: scan-build.
Signed-off-by: Francis Deslauriers <francis.deslauriers@efficios.com>
Signed-off-by: Jérémie Galarneau <jeremie.galarneau@efficios.com>
Change-Id: I090e57d5c896fbac7381989e887ae7281697b4de

tests/utils/testapp/gen-ust-events-ns/gen-ust-events-ns.c

index c5f25dd7bb1308cc17f34492052e0d2ed339a7dd..2a3c7a45f38a4e713ed6c963610787367b2ba611 100644 (file)
@@ -88,7 +88,7 @@ static void debug_printf(const char *format, ...)
 
 static int get_ns_inum(const char *ns, ino_t *ns_inum)
 {
-       int ret = 0;
+       int ret = -1;
        struct stat sb;
        char proc_ns_path[LTTNG_PROC_NS_PATH_MAX];
 
@@ -99,8 +99,7 @@ static int get_ns_inum(const char *ns, ino_t *ns_inum)
                        "/proc/thread-self/ns/%s", ns) >= 0) {
                if (stat(proc_ns_path, &sb) == 0) {
                        *ns_inum = sb.st_ino;
-               } else {
-                       ret = -1;
+                       ret = 0;
                }
                goto end;
        }
@@ -109,8 +108,7 @@ static int get_ns_inum(const char *ns, ino_t *ns_inum)
                        "/proc/self/task/%d/%s/net", lttng_gettid(), ns) >= 0) {
                if (stat(proc_ns_path, &sb) == 0) {
                        *ns_inum = sb.st_ino;
-               } else {
-                       ret = -1;
+                       ret = 0;
                }
                goto end;
        }
This page took 0.026437 seconds and 4 git commands to generate.