diff options
| author | Serge E. Hallyn <serue@us.ibm.com> | 2007-03-27 01:32:31 -0400 |
|---|---|---|
| committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-03-27 12:05:16 -0400 |
| commit | a28d193cbf01375974683c13e99a52ef489e5eb0 (patch) | |
| tree | d252eeefa13627847f87f2a72a5cdfd3d3484973 /ipc | |
| parent | d1985ad1da28eac507d855af8099f6010c51b167 (diff) | |
[PATCH] ipcns: fix !CONFIG_IPC_NS behavior
When CONFIG_IPC_NS=n, clone(CLONE_NEWIPC) claims success, but did not actually
clone a new IPC namespace.
Fix this to return -EINVAL so the caller knows his request was denied.
Signed-off-by: Serge E. Hallyn <serue@us.ibm.com>
Cc: "Eric W. Biederman" <ebiederm@xmission.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'ipc')
| -rw-r--r-- | ipc/util.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/ipc/util.c b/ipc/util.c index 08a647965b9e..0b652387d169 100644 --- a/ipc/util.c +++ b/ipc/util.c | |||
| @@ -144,6 +144,13 @@ void free_ipc_ns(struct kref *kref) | |||
| 144 | shm_exit_ns(ns); | 144 | shm_exit_ns(ns); |
| 145 | kfree(ns); | 145 | kfree(ns); |
| 146 | } | 146 | } |
| 147 | #else | ||
| 148 | int copy_ipcs(unsigned long flags, struct task_struct *tsk) | ||
| 149 | { | ||
| 150 | if (flags & CLONE_NEWIPC) | ||
| 151 | return -EINVAL; | ||
| 152 | return 0; | ||
| 153 | } | ||
| 147 | #endif | 154 | #endif |
| 148 | 155 | ||
| 149 | /** | 156 | /** |
