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
This commit is contained in:
Brooks Davis 2009-09-08 19:37:59 +00:00
parent 2ff8f63aa6
commit d534b0c238
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=196990

View File

@ -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) {