aboutsummaryrefslogtreecommitdiff
path: root/lib/libkvm
diff options
context:
space:
mode:
authorBrooks Davis <brooks@FreeBSD.org>2009-09-08 19:37:59 +0000
committerBrooks Davis <brooks@FreeBSD.org>2009-09-08 19:37:59 +0000
commitd534b0c238f840a589e0513fe70f3531763ae9cf (patch)
tree8617996dd3ebfbc658d48eec0bd1b70222f40af3 /lib/libkvm
parent2ff8f63aa6b7a81fd10e443a93f70ec6f84f3b7e (diff)
downloadsrc-d534b0c238f840a589e0513fe70f3531763ae9cf.tar.gz
src-d534b0c238f840a589e0513fe70f3531763ae9cf.zip
cr_groups is no longer embedded in struct ucred and is instead stored
in a seperate array. As such we need to use kvm_read rather than bcopy to populate the ki_groups field. This fixes a crash when running ps -ax on a coredump. Reported by: brucec Tested by: brucec MFC after: 3 days
Notes
Notes: svn path=/head/; revision=196990
Diffstat (limited to 'lib/libkvm')
-rw-r--r--lib/libkvm/kvm_proc.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/libkvm/kvm_proc.c b/lib/libkvm/kvm_proc.c
index 7fb85a4a2613..071f859e002d 100644
--- a/lib/libkvm/kvm_proc.c
+++ b/lib/libkvm/kvm_proc.c
@@ -151,7 +151,7 @@ kvm_proclist(kd, what, arg, p, bp, maxcnt)
kp->ki_cr_flags |= KI_CRF_GRP_OVERFLOW;
}
kp->ki_ngroups = ucred.cr_ngroups;
- bcopy(ucred.cr_groups, kp->ki_groups,
+ kvm_read(kd, (u_long)ucred.cr_groups, kp->ki_groups,
kp->ki_ngroups * sizeof(gid_t));
kp->ki_uid = ucred.cr_uid;
if (ucred.cr_prison != NULL) {