From: Peter Schiffer Date: Wed, 13 Jul 2011 12:50:41 +0000 (+0200) Subject: Fixed few findings from Coverity scan X-Git-Tag: v0.38~68 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=7f5641d9b2e8d073466f0511a17e669438dbaea7;p=thirdparty%2Flibcgroup.git Fixed few findings from Coverity scan In function cgroup_parse_rules() added missing check for getpwuid() result. In cgroup_get_procs() added missing fclose() on file descriptor. In load_list() added missing fclose() on file descriptor. Signed-off-by: Peter Schiffer Signed-off-by: Jan Safranek --- diff --git a/src/api.c b/src/api.c index d5022c2b..e443ad50 100644 --- a/src/api.c +++ b/src/api.c @@ -637,6 +637,9 @@ static int cgroup_parse_rules(bool cache, uid_t muid, */ if (grp && muid != CGRULE_INVALID) { pwd = getpwuid(muid); + if (!pwd) { + continue; + } for (i = 0; grp->gr_mem[i]; i++) { if (!(strcmp(pwd->pw_name, grp->gr_mem[i]))) matched = true; @@ -3910,6 +3913,8 @@ int cgroup_get_procs(char *name, char *controller, pid_t **pids, int *size) } } + fclose(procs); + *size = n; qsort(tmp_list, n, sizeof(pid_t), &pid_compare); diff --git a/src/tools/cgsnapshot.c b/src/tools/cgsnapshot.c index 30e7b6de..404d54ad 100644 --- a/src/tools/cgsnapshot.c +++ b/src/tools/cgsnapshot.c @@ -146,6 +146,8 @@ int load_list(char *filename, struct black_list_type **p_list) } } + fclose(fw); + *p_list = start; return 0;