summaryrefslogtreecommitdiffstats
path: root/api.c
diff options
context:
space:
mode:
authorDhaval Giani <dhaval@linux.vnet.ibm.com>2008-07-08 17:11:53 +0000
committerDhaval Giani <dhaval@linux.vnet.ibm.com>2008-07-08 17:11:53 +0000
commit225b70ef3ba5b20ea458d666132d63a83b3f7c89 (patch)
tree0ac748a5cb279dcba87e764229aebe3ccea9c3f9 /api.c
parent2ebbb7f97eafabcb124f43e8fa59265e5bf3a509 (diff)
downloadlibcg-225b70ef3ba5b20ea458d666132d63a83b3f7c89.tar.gz
libcg-225b70ef3ba5b20ea458d666132d63a83b3f7c89.tar.xz
libcg-225b70ef3ba5b20ea458d666132d63a83b3f7c89.zip
libcgroup: Handle null cgroups in APIs
From: Sudhir Kumar <skumar@linux.vnet.ibm.com> [dhaval@linux.vnet.ibm.com]: correct error codes Signed-off-by: Sudhir Kumar <skumar@linux.vnet.ibm.com> Signed-off-by: Dhaval Giani <dhaval@linux.vnet.ibm.com> Acked-by: Balbir Singh <balbir@linux.vnet.ibm.com> git-svn-id: https://libcg.svn.sourceforge.net/svnroot/libcg/trunk@102 4f4bb910-9a46-0410-90c8-c897d4f1cd53
Diffstat (limited to 'api.c')
-rw-r--r--api.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/api.c b/api.c
index a8d5a57..45a8689 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;