summaryrefslogtreecommitdiffstats
path: root/sys/kern/kern_prot.c
diff options
context:
space:
mode:
authorjhb <jhb@FreeBSD.org>2001-10-11 22:48:37 +0000
committerjhb <jhb@FreeBSD.org>2001-10-11 22:48:37 +0000
commit76f1acef67a835bafb1963ff8bc73ef33a7c2016 (patch)
tree83a0d64180d5ab5929d1dc742c3b023775308daf /sys/kern/kern_prot.c
parent0c1765c061e3fbd8b3b08c4de039e483ff855661 (diff)
downloadFreeBSD-src-76f1acef67a835bafb1963ff8bc73ef33a7c2016.zip
FreeBSD-src-76f1acef67a835bafb1963ff8bc73ef33a7c2016.tar.gz
Rework some code to be a bit simpler by inverting a few tests and using
else clauses instead of goto's.
Diffstat (limited to 'sys/kern/kern_prot.c')
-rw-r--r--sys/kern/kern_prot.c34
1 files changed, 12 insertions, 22 deletions
diff --git a/sys/kern/kern_prot.c b/sys/kern/kern_prot.c
index 191790b..68e408b 100644
--- a/sys/kern/kern_prot.c
+++ b/sys/kern/kern_prot.c
@@ -174,19 +174,14 @@ getpgid(td, uap)
mtx_lock(&Giant);
if (uap->pid == 0)
td->td_retval[0] = p->p_pgrp->pg_id;
+ else if ((pt = pfind(uap->pid)) == NULL)
+ error = ESRCH;
else {
- if ((pt = pfind(uap->pid)) == NULL) {
- error = ESRCH;
- goto done2;
- }
- if ((error = p_cansee(p, pt))) {
- PROC_UNLOCK(pt);
- goto done2;
- }
- td->td_retval[0] = pt->p_pgrp->pg_id;
+ error = p_cansee(p, pt);
+ if (error == 0)
+ td->td_retval[0] = pt->p_pgrp->pg_id;
PROC_UNLOCK(pt);
}
-done2:
mtx_unlock(&Giant);
return (error);
}
@@ -213,21 +208,16 @@ getsid(td, uap)
int error = 0;
mtx_lock(&Giant);
- if (uap->pid == 0) {
+ if (uap->pid == 0)
td->td_retval[0] = p->p_session->s_sid;
- } else {
- if ((pt = pfind(uap->pid)) == NULL) {
- error = ESRCH;
- goto done2;
- }
- if ((error = p_cansee(p, pt))) {
- PROC_UNLOCK(pt);
- goto done2;
- }
- td->td_retval[0] = pt->p_session->s_sid;
+ else if ((pt = pfind(uap->pid)) == NULL)
+ error = ESRCH;
+ else {
+ error = p_cansee(p, pt);
+ if (error == 0)
+ td->td_retval[0] = pt->p_session->s_sid;
PROC_UNLOCK(pt);
}
-done2:
mtx_unlock(&Giant);
return (error);
}
OpenPOWER on IntegriCloud