diff options
| author | Robert Watson <rwatson@FreeBSD.org> | 2007-02-20 00:06:59 +0000 |
|---|---|---|
| committer | Robert Watson <rwatson@FreeBSD.org> | 2007-02-20 00:06:59 +0000 |
| commit | 2390d78f74f328c032dc6fa6a65662e8668341bf (patch) | |
| tree | 500f708c95e16420eaab70b3c5acf711bc15b261 /sys/kern/sysv_ipc.c | |
| parent | b12c55ab925bb6d4af4dfa59c338f01fc01d8925 (diff) | |
Notes
Diffstat (limited to 'sys/kern/sysv_ipc.c')
| -rw-r--r-- | sys/kern/sysv_ipc.c | 9 |
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; } |
