selinux: fix a possible memory leak in cond_read_node()

The cond_read_node() should free the given node on error path as it's
not linked to p->cond_list yet.  This is done via cond_node_destroy()
but it's not called when next_entry() fails before the expr loop.

Signed-off-by: Namhyung Kim <namhyung@kernel.org>
Signed-off-by: Paul Moore <pmoore@redhat.com>
This commit is contained in:
Namhyung Kim 2014-06-15 01:19:02 +09:00 коммит произвёл Paul Moore
Родитель f004afe60d
Коммит 6e51f9cbfa
1 изменённых файлов: 1 добавлений и 1 удалений

Просмотреть файл

@ -404,7 +404,7 @@ static int cond_read_node(struct policydb *p, struct cond_node *node, void *fp)
rc = next_entry(buf, fp, sizeof(u32) * 2);
if (rc)
return rc;
goto err;
node->cur_state = le32_to_cpu(buf[0]);