Apply by doing: cd /usr/src patch -p0 < 026_ktrace.patch And then rebuild your kernel. Index: sys/kern/kern_ktrace.c =================================================================== RCS file: /cvs/src/sys/kern/kern_ktrace.c,v retrieving revision 1.24 retrieving revision 1.24.2.1 diff -u -r1.24 -r1.24.2.1 --- sys/kern/kern_ktrace.c 2001/06/26 06:27:38 1.24 +++ sys/kern/kern_ktrace.c 2002/06/27 08:21:32 1.24.2.1 @@ -1,4 +1,4 @@ -/* $OpenBSD: kern_ktrace.c,v 1.24 2001/06/26 06:27:38 aaron Exp $ */ +/* $OpenBSD: kern_ktrace.c,v 1.24.2.1 2002/06/27 08:21:32 miod Exp $ */ /* $NetBSD: kern_ktrace.c,v 1.23 1996/02/09 18:59:36 christos Exp $ */ /* @@ -53,6 +53,8 @@ #include +#define ISSET(t, f) ((t) & (f)) + void ktrinitheader __P((struct ktr_header *, struct proc *, int)); int ktrops __P((struct proc *, struct proc *, int, int, struct vnode *)); int ktrsetchildren __P((struct proc *, struct proc *, int, int, @@ -528,7 +530,8 @@ target->p_ruid == target->p_svuid && caller->p_rgid == target->p_rgid && /* XXX */ target->p_rgid == target->p_svgid && - (targetp->p_traceflag & KTRFAC_ROOT) == 0) || + (targetp->p_traceflag & KTRFAC_ROOT) == 0 && + !ISSET(targetp->p_flag, P_SUGID)) || caller->pc_ucred->cr_uid == 0) return (1);