From: Dhaval Giani Date: Tue, 8 Jul 2008 17:11:53 +0000 (+0000) Subject: libcgroup: Handle null cgroups in APIs X-Git-Tag: v0.34~273 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=225b70ef3ba5b20ea458d666132d63a83b3f7c89;p=thirdparty%2Flibcgroup.git libcgroup: Handle null cgroups in APIs From: Sudhir Kumar [dhaval@linux.vnet.ibm.com]: correct error codes Signed-off-by: Sudhir Kumar Signed-off-by: Dhaval Giani Acked-by: Balbir Singh git-svn-id: https://libcg.svn.sourceforge.net/svnroot/libcg/trunk@102 4f4bb910-9a46-0410-90c8-c897d4f1cd53 --- diff --git a/api.c b/api.c index a8d5a572..45a8689a 100644 --- a/api.c +++ b/api.c @@ -410,6 +410,9 @@ int cgroup_modify_cgroup(struct cgroup *cgroup) if (!cgroup_initialized) return ECGROUPNOTINITIALIZED; + if (!cgroup) + return ECGROUPNOTALLOWED; + for (i = 0; i < cgroup->index; i++) { if (!cgroup_test_subsys_mounted(cgroup->controller[i]->name)) return ECGROUPSUBSYSNOTMOUNTED; @@ -450,6 +453,9 @@ int cgroup_create_cgroup(struct cgroup *cgroup, int ignore_ownership) if (!cgroup_initialized) return ECGROUPNOTINITIALIZED; + if (!cgroup) + return ECGROUPNOTALLOWED; + for (i = 0; i < cgroup->index; i++) { if (!cgroup_test_subsys_mounted(cgroup->controller[i]->name)) return ECGROUPSUBSYSNOTMOUNTED; @@ -532,6 +538,9 @@ int cgroup_delete_cgroup(struct cgroup *cgroup, int ignore_migration) if (!cgroup_initialized) return ECGROUPNOTINITIALIZED; + if (!cgroup) + return ECGROUPNOTALLOWED; + for (i = 0; i < cgroup->index; i++) { if (!cgroup_test_subsys_mounted(cgroup->controller[i]->name)) return ECGROUPSUBSYSNOTMOUNTED;