summaryrefslogtreecommitdiffstats
path: root/sys/kern/kern_prot.c
diff options
context:
space:
mode:
authorphk <phk@FreeBSD.org>2000-01-03 14:26:47 +0000
committerphk <phk@FreeBSD.org>2000-01-03 14:26:47 +0000
commit12750741225484aa642de485db158821253092c9 (patch)
tree2313b9df388b4de93e213a981e9f8243f8364861 /sys/kern/kern_prot.c
parentd18cccd23d3a6d67735fbe01d152a87f5234c470 (diff)
downloadFreeBSD-src-12750741225484aa642de485db158821253092c9.zip
FreeBSD-src-12750741225484aa642de485db158821253092c9.tar.gz
truss /usr/bin/su
login (or not if root) then exit the shell truss will get stuct in tsleep I dont know if this is correct, but it fixes the problem and according to the commends in pioctl.h, PF_ISUGID is set when we want to ignore UID changes. The code is checking for when PF_ISUGID is not set and since it never is set, we always ignore UID changes. Submitted by: Paul Saab <ps@yahoo-inc.com>
Diffstat (limited to 'sys/kern/kern_prot.c')
-rw-r--r--sys/kern/kern_prot.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/kern/kern_prot.c b/sys/kern/kern_prot.c
index 1611cc3..306b36c 100644
--- a/sys/kern/kern_prot.c
+++ b/sys/kern/kern_prot.c
@@ -929,9 +929,9 @@ setlogin(p, uap)
void
setsugid(p)
- struct proc *p;
+ struct proc *p;
{
p->p_flag |= P_SUGID;
- if (!(p->p_pfsflags & PF_ISUGID))
+ if (p->p_pfsflags & PF_ISUGID)
p->p_stops = 0;
}
OpenPOWER on IntegriCloud