1. check return value of cgroup_string_list_init. 2. add nonzero for -a and -t
v4: - add nonzero for cgroup_new_cgroup Signed-off-by: Libo Chen <clbchenlibo.c...@huawei.com> Acked-by: Ivana Hutarova Varekova <varek...@redhat.com> --- src/tools/cgconfig.c | 11 ++++++++--- 1 files changed, 8 insertions(+), 3 deletions(-) diff --git a/src/tools/cgconfig.c b/src/tools/cgconfig.c index 066a85f..baa40c0 100644 --- a/src/tools/cgconfig.c +++ b/src/tools/cgconfig.c @@ -96,7 +96,9 @@ int main(int argc, char *argv[]) return -1; } - ret = cgroup_string_list_init(&cfg_files, argc/2); + error = cgroup_string_list_init(&cfg_files, argc/2); + if (error) + goto err; while ((c = getopt_long(argc, argv, "hl:L:t:a:d:f:s:", options, NULL)) > 0) { @@ -119,12 +121,14 @@ int main(int argc, char *argv[]) break; case 'a': /* set admin uid/gid */ - if (parse_uid_gid(optarg, &auid, &agid, argv[0])) + error = parse_uid_gid(optarg, &auid, &agid, argv[0]); + if (error) goto err; break; case 't': /* set task uid/gid */ - if (parse_uid_gid(optarg, &tuid, &tgid, argv[0])) + error = parse_uid_gid(optarg, &tuid, &tgid, argv[0]); + if (error) goto err; break; case 'd': @@ -161,6 +165,7 @@ int main(int argc, char *argv[]) /* set default permissions */ default_group = cgroup_new_cgroup("default"); if (!default_group) { + error = -1; fprintf(stderr, "%s: cannot create default cgroup\n", argv[0]); goto err; } -- 1.7.1 ------------------------------------------------------------------------------ Learn the latest--Visual Studio 2012, SharePoint 2013, SQL 2012, more! Discover the easy way to master current and previous Microsoft technologies and advance your career. Get an incredible 1,500+ hours of step-by-step tutorial videos with LearnDevNow. Subscribe today and save! http://pubads.g.doubleclick.net/gampad/clk?id=58041391&iu=/4140/ostg.clktrk _______________________________________________ Libcg-devel mailing list Libcg-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/libcg-devel