aboutsummaryrefslogtreecommitdiffstats
path: root/ipc/util.c
diff options
context:
space:
mode:
Diffstat (limited to 'ipc/util.c')
-rw-r--r--ipc/util.c9
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,
803 } 803 }
804 804
805 audit_ipc_obj(ipcp); 805 audit_ipc_obj(ipcp);
806 806 if (cmd == IPC_SET)
807 if (cmd == IPC_SET) { 807 audit_ipc_set_perm(extra_perm, perm->uid,
808 err = audit_ipc_set_perm(extra_perm, perm->uid,
809 perm->gid, perm->mode); 808 perm->gid, perm->mode);
810 if (err)
811 goto out_unlock;
812 }
813 809
814 euid = current_euid(); 810 euid = current_euid();
815 if (euid == ipcp->cuid || 811 if (euid == ipcp->cuid ||
@@ -817,7 +813,6 @@ struct kern_ipc_perm *ipcctl_pre_down(struct ipc_ids *ids, int id, int cmd,
817 return ipcp; 813 return ipcp;
818 814
819 err = -EPERM; 815 err = -EPERM;
820out_unlock:
821 ipc_unlock(ipcp); 816 ipc_unlock(ipcp);
822out_up: 817out_up:
823 up_write(&ids->rw_mutex); 818 up_write(&ids->rw_mutex);