libsemanage: do not dereference a NULL pointer when calloc() fails

If "names = calloc(num_modinfos, sizeof(*names))" fails in
semanage_get_cil_paths(), the function tries to frees items in array
"names" even though it is NULL. Avoid this by returning directly.

This issue has been found using clang's static analyzer.

Signed-off-by: Nicolas Iooss <nicolas.iooss@m4x.org>
This commit is contained in:
Nicolas Iooss 2017-03-28 23:41:51 +02:00 committed by James Carter
parent 0438d5c421
commit 85da6194ea

View File

@ -1012,8 +1012,7 @@ int semanage_get_cil_paths(semanage_handle_t * sh,
names = calloc(num_modinfos, sizeof(*names));
if (names == NULL) {
ERR(sh, "Error allocating space for filenames.");
status = -1;
goto cleanup;
return -1;
}
for (i = 0; i < num_modinfos; i++) {