summaryrefslogtreecommitdiffstats
path: root/sys
diff options
context:
space:
mode:
authorjhb <jhb@FreeBSD.org>2002-02-27 19:12:14 +0000
committerjhb <jhb@FreeBSD.org>2002-02-27 19:12:14 +0000
commit9fbc6e93de5a6d93c811ff7ab26c7612604f0512 (patch)
treec5037d543d365d03b4cb331e6834dddee61b4577 /sys
parent9b6ed8b0804f4594e41670dbaa9197d313487fa4 (diff)
downloadFreeBSD-src-9fbc6e93de5a6d93c811ff7ab26c7612604f0512.zip
FreeBSD-src-9fbc6e93de5a6d93c811ff7ab26c7612604f0512.tar.gz
Fix Giant leakage in several error cases in __semctl().
Diffstat (limited to 'sys')
-rw-r--r--sys/kern/sysv_sem.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/sys/kern/sysv_sem.c b/sys/kern/sysv_sem.c
index 152ce0b..1b3c827 100644
--- a/sys/kern/sysv_sem.c
+++ b/sys/kern/sysv_sem.c
@@ -494,14 +494,14 @@ __semctl(td, uap)
switch(cmd) {
case SEM_STAT:
if (semid < 0 || semid >= seminfo.semmsl)
- return(EINVAL);
+ UGAR(EINVAL);
semaptr = &sema[semid];
if ((semaptr->sem_perm.mode & SEM_ALLOC) == 0 )
- return(EINVAL);
+ UGAR(EINVAL);
if ((error = ipcperm(td, &semaptr->sem_perm, IPC_R)))
- return(error);
+ UGAR(error);
if ((error = copyin(arg, &real_arg, sizeof(real_arg))) != 0)
- return(error);
+ UGAR(error);
error = copyout((caddr_t)semaptr, real_arg.buf,
sizeof(struct semid_ds));
rval = IXSEQ_TO_IPCID(semid,semaptr->sem_perm);
OpenPOWER on IntegriCloud