converting cap_set_pg() to for_each_task_pid()

William Lee Irwin III (wli@holomorphy.com)
Tue, 17 Dec 2002 21:57:42 -0800


I have a pending patch that converts cap_set_pg() to the
for_each_task_pid() API. Could you review this, and if it
pass, include it in your tree?

Thanks,
Bill

cap_set_pg() wants to find all processes in a given process group. This
converts it to use for_each_task_pid().

capability.c | 16 +++++++++-------
1 files changed, 9 insertions(+), 7 deletions(-)

diff -urpN wli-2.5.51-bk1-4/kernel/capability.c wli-2.5.51-bk1-5/kernel/capability.c
--- wli-2.5.51-bk1-4/kernel/capability.c 2002-12-09 18:45:43.000000000 -0800
+++ wli-2.5.51-bk1-5/kernel/capability.c 2002-12-11 18:32:44.000000000 -0800
@@ -84,13 +84,15 @@ static inline void cap_set_pg(int pgrp,
kernel_cap_t *inheritable,
kernel_cap_t *permitted)
{
- task_t *g, *target;
-
- do_each_thread(g, target) {
- if (target->pgrp != pgrp)
- continue;
- security_capset_set(target, effective, inheritable, permitted);
- } while_each_thread(g, target);
+ task_t *g, *target;
+ struct list_head *l;
+ struct pid *pid;
+
+ for_each_task_pid(pgrp, PIDTYPE_PGID, g, l, pid) {
+ target = g;
+ while_each_thread(g, target)
+ security_capset_set(target, effective, inheritable, permitted);
+ }
}

/*
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/