Use KERN_PROC_PROC instead of KERN_PROC_ALL when enumerating processes so

that we kill each process once, not once for every thread it owns. This
avoids "No such process" warnings when killing threaded processes.
This commit is contained in:
Tim J. Robbins 2003-09-07 09:13:44 +00:00
parent 978243bd80
commit 2c801d3d5f
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=119834

View File

@ -266,19 +266,16 @@ main(int ac, char **av)
size = 0;
mib[0] = CTL_KERN;
mib[1] = KERN_PROC;
mib[2] = KERN_PROC_ALL;
mib[2] = KERN_PROC_PROC;
mib[3] = 0;
miblen = 3;
miblen = 4;
if (user && mib[2] == KERN_PROC_ALL) {
if (user) {
mib[2] = KERN_PROC_RUID;
mib[3] = uid;
miblen = 4;
}
if (tty && mib[2] == KERN_PROC_ALL) {
} else if (tty) {
mib[2] = KERN_PROC_TTY;
mib[3] = tdev;
miblen = 4;
}
st = sysctl(mib, miblen, NULL, &size, NULL, 0);