diff options
author | Dhaval Giani <dhaval@linux.vnet.ibm.com> | 2008-07-08 17:11:53 +0000 |
---|---|---|
committer | Dhaval Giani <dhaval@linux.vnet.ibm.com> | 2008-07-08 17:11:53 +0000 |
commit | 225b70ef3ba5b20ea458d666132d63a83b3f7c89 (patch) | |
tree | 0ac748a5cb279dcba87e764229aebe3ccea9c3f9 /api.c | |
parent | 2ebbb7f97eafabcb124f43e8fa59265e5bf3a509 (diff) | |
download | libcg-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.c | 9 |
1 files changed, 9 insertions, 0 deletions
@@ -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; |