From 4ec76dc947a6e86a14dc9d9aa3ab9e9fea635397 Mon Sep 17 00:00:00 2001 From: Ivana Hutarova Varekova Date: Fri, 12 Nov 2010 09:06:46 +0100 Subject: [PATCH] Add the return value fts_open check This patch adds return value checks to two occurrences of fts_open command calls Signed-off-by: Ivana Hutarova Varekova Signed-off-by: Jan Safranek Acked-by: Dhaval Giani --- src/api.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/api.c b/src/api.c index 1d2d1118..a971ecd1 100644 --- a/src/api.c +++ b/src/api.c @@ -158,6 +158,10 @@ static int cg_chown_recursive(char **path, uid_t owner, gid_t group) cgroup_dbg("chown: path is %s\n", *path); fts = fts_open(path, FTS_PHYSICAL | FTS_NOCHDIR | FTS_NOSTAT, NULL); + if (fts == NULL) { + last_errno = errno; + return ECGOTHER; + } while (1) { FTSENT *ent; ent = fts_read(fts); @@ -2830,6 +2834,10 @@ int cgroup_walk_tree_begin(const char *controller, const char *base_path, entry->fts = fts_open(cg_path, FTS_LOGICAL | FTS_NOCHDIR | FTS_NOSTAT, NULL); + if (entry->fts == NULL) { + last_errno = errno; + return ECGOTHER; + } ent = fts_read(entry->fts); if (!ent) { cgroup_dbg("fts_read failed\n"); -- 2.47.2