From 225b70ef3ba5b20ea458d666132d63a83b3f7c89 Mon Sep 17 00:00:00 2001 From: Dhaval Giani Date: Tue, 8 Jul 2008 17:11:53 +0000 Subject: [PATCH] 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 --- api.c | 9 +++++++++ 1 file changed, 9 insertions(+) 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; -- 2.47.2