summaryrefslogtreecommitdiffstats
path: root/lib/libkvm
diff options
context:
space:
mode:
authorbrooks <brooks@FreeBSD.org>2009-09-08 19:37:59 +0000
committerbrooks <brooks@FreeBSD.org>2009-09-08 19:37:59 +0000
commit02af361e1ca4fb3d3477083783a2ba90b666b126 (patch)
tree8617996dd3ebfbc658d48eec0bd1b70222f40af3 /lib/libkvm
parenta7104567d1b1543ad709fb587f326e65d5efc1e6 (diff)
downloadFreeBSD-src-02af361e1ca4fb3d3477083783a2ba90b666b126.zip
FreeBSD-src-02af361e1ca4fb3d3477083783a2ba90b666b126.tar.gz
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
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 7fb85a4..071f859 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) {
OpenPOWER on IntegriCloud