+static struct pidset filter_by_uid(struct pidset in, int uid)
+{
+ /*
+ * Return only those processes with a given uid.
+ */
+ struct pidset ret;
+ int pid;
+
+ pidset_init(&ret);
+ for (pid = pidset_first(&in); pid >= 0; pid = pidset_next(&in)) {
+ const struct procdata *proc = get_proc(pid);
+ if (proc->uid == uid)
+ pidset_add(&ret, pid);
+ }
+ return ret;
+}
+