]> git.ipfire.org Git - thirdparty/lxc.git/commitdiff
lxccontainer: avoid NULL pointer dereference
authorChristian Brauner <christian.brauner@ubuntu.com>
Sat, 6 May 2017 21:38:22 +0000 (23:38 +0200)
committerStéphane Graber <stgraber@ubuntu.com>
Tue, 9 May 2017 16:33:08 +0000 (12:33 -0400)
In case the lxc command socket is hashed and the socket was created for a
different path than the one we're currently querying
lxc_cmd_get_{lxcpath,name}() can return NULL. The command socket path is hashed
when len(lxcpath) > sizeof(sun_path) - 2.

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
src/lxc/lxccontainer.c

index 8d31f396190dda042c8d3fce08d220cff5439cc7..e7c9113b4e5ed065af0f0f8bd71c9d942cda5b12 100644 (file)
@@ -3584,7 +3584,10 @@ int list_active_containers(const char *lxcpath, char ***nret,
                *p2 = '\0';
 
                if (is_hashed) {
-                       if (strncmp(lxcpath, lxc_cmd_get_lxcpath(p), lxcpath_len) != 0)
+                       char *recvpath = lxc_cmd_get_lxcpath(p);
+                       if (!recvpath)
+                               continue;
+                       if (strncmp(lxcpath, recvpath, lxcpath_len) != 0)
                                continue;
                        p = lxc_cmd_get_name(p);
                }