diff options
author | Al Viro <viro@zeniv.linux.org.uk> | 2008-12-10 03:47:15 -0500 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2009-01-04 15:14:40 -0500 |
commit | e816f370cbadd2afea9f1a42f232d0636137d563 (patch) | |
tree | 8a9fe488ced59cd9864fcbf15292641c3b95143c /ipc/util.c | |
parent | a33e6751003c5ade603737d828b1519d980ce392 (diff) | |
download | lwn-e816f370cbadd2afea9f1a42f232d0636137d563.tar.gz lwn-e816f370cbadd2afea9f1a42f232d0636137d563.zip |
sanitize audit_ipc_set_perm()
* get rid of allocations
* make it return void
* simplify callers
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'ipc/util.c')
-rw-r--r-- | ipc/util.c | 9 |
1 files changed, 2 insertions, 7 deletions
diff --git a/ipc/util.c b/ipc/util.c index 579552abd50a..7585a72e259b 100644 --- a/ipc/util.c +++ b/ipc/util.c @@ -803,13 +803,9 @@ struct kern_ipc_perm *ipcctl_pre_down(struct ipc_ids *ids, int id, int cmd, } audit_ipc_obj(ipcp); - - if (cmd == IPC_SET) { - err = audit_ipc_set_perm(extra_perm, perm->uid, + if (cmd == IPC_SET) + audit_ipc_set_perm(extra_perm, perm->uid, perm->gid, perm->mode); - if (err) - goto out_unlock; - } euid = current_euid(); if (euid == ipcp->cuid || @@ -817,7 +813,6 @@ struct kern_ipc_perm *ipcctl_pre_down(struct ipc_ids *ids, int id, int cmd, return ipcp; err = -EPERM; -out_unlock: ipc_unlock(ipcp); out_up: up_write(&ids->rw_mutex); |