summaryrefslogtreecommitdiff
path: root/sys/kern/sysv_ipc.c
diff options
context:
space:
mode:
authorRobert Watson <rwatson@FreeBSD.org>2007-02-20 00:06:59 +0000
committerRobert Watson <rwatson@FreeBSD.org>2007-02-20 00:06:59 +0000
commit2390d78f74f328c032dc6fa6a65662e8668341bf (patch)
tree500f708c95e16420eaab70b3c5acf711bc15b261 /sys/kern/sysv_ipc.c
parentb12c55ab925bb6d4af4dfa59c338f01fc01d8925 (diff)
Notes
Diffstat (limited to 'sys/kern/sysv_ipc.c')
-rw-r--r--sys/kern/sysv_ipc.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/sys/kern/sysv_ipc.c b/sys/kern/sysv_ipc.c
index 0cbb4bbe8c42..7503760793d5 100644
--- a/sys/kern/sysv_ipc.c
+++ b/sys/kern/sysv_ipc.c
@@ -125,19 +125,22 @@ ipcperm(struct thread *td, struct ipc_perm *perm, int acc_mode)
*/
priv_granted = 0;
if ((acc_mode & IPC_M) && !(dac_granted & IPC_M)) {
- error = priv_check(td, PRIV_IPC_ADMIN);
+ error = priv_check_cred(td->td_ucred, PRIV_IPC_ADMIN,
+ SUSER_ALLOWJAIL);
if (error == 0)
priv_granted |= IPC_M;
}
if ((acc_mode & IPC_R) && !(dac_granted & IPC_R)) {
- error = priv_check(td, PRIV_IPC_READ);
+ error = priv_check_cred(td->td_ucred, PRIV_IPC_READ,
+ SUSER_ALLOWJAIL);
if (error == 0)
priv_granted |= IPC_R;
}
if ((acc_mode & IPC_W) && !(dac_granted & IPC_W)) {
- error = priv_check(td, PRIV_IPC_WRITE);
+ error = priv_check_cred(td->td_ucred, PRIV_IPC_WRITE,
+ SUSER_ALLOWJAIL);
if (error == 0)
priv_granted |= IPC_W;
}