Fix: unchecked return value of lttng_directory_handle_create()
authorJérémie Galarneau <jeremie.galarneau@efficios.com>
Fri, 31 Jan 2020 22:41:08 +0000 (17:41 -0500)
committerJérémie Galarneau <jeremie.galarneau@efficios.com>
Fri, 31 Jan 2020 22:41:08 +0000 (17:41 -0500)
Although unlikely in this case (as the path was just created), the
creation of a directory handle can fail and this should always be
accounted-for.

1415129 Dereference null return value

If the function actually returns a null value, a null pointer
dereference will occur.

In lttng_unlinked_file_pool_add_inode: Return value of function which
returns null is dereferenced without checking (CWE-476)

Reported-by: Coverity Scan
Signed-off-by: Jérémie Galarneau <jeremie.galarneau@efficios.com>
Change-Id: I914802c25b569320e08265aae251e062bccbd50e

src/common/fd-tracker/inode.c

index 727f6141aba4d78de12bf77ec3f688ef6c8bf92f..b894f8fbf6d6d41073cd14a94ea63a5d7285e3b0 100644 (file)
@@ -133,6 +133,12 @@ static int lttng_unlinked_file_pool_add_inode(
                }
                pool->unlink_directory_handle = lttng_directory_handle_create(
                                pool->unlink_directory_path);
+               if (!pool->unlink_directory_handle) {
+                       ERR("Failed to create directory handle to unlinked file pool at %s",
+                                       pool->unlink_directory_path);
+                       ret = -1;
+                       goto end;
+               }
        }
 
        ret = lttng_directory_handle_rename(inode->location.directory_handle,
This page took 0.035867 seconds and 4 git commands to generate.