lkml.org 
[lkml]   [2004]   [Apr]   [12]   [last100]   RSS Feed
Views: [more markup]  [less markup]  [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
SubjectRe: fix must_not_trace_exec() test (was: 2.6.5-mm4)
FromOlaf Dietsche <>
DateMon, 12 Apr 2004 11:44:51 +0200
Andrew Morton <akpm@osdl.org> writes:

> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.5/2.6.5-mm4/
>
> +compute-creds-race-fix.patch
> +compute-creds-race-fix-fix.patch
>
>  Fix possible race in permission calculation across exec()

this is a small fix for the modified must_not_trace_exec() test.
I have tested neither the compute-creds-race-fix nor my patch.
It is on top of 2.6.5 + compute-creds-race-fix.patch +
compute-creds-race-fix-fix.patch.

Although, I'd rather not lump together unrelated tests without
renaming must_not_trace_exec(). Btw, can someone enlighten me what
this atomic_read() test is all about.

Regards, Olaf.

diff -urN a/security/commoncap.c b/security/commoncap.c
--- a/security/commoncap.c	Mon Apr 12 10:38:17 2004
+++ b/security/commoncap.c	Mon Apr 12 11:10:38 2004
@@ -118,9 +118,9 @@
 static inline int must_not_trace_exec (struct task_struct *p)
 {
 	return ((p->ptrace & PT_PTRACED) && !(p->ptrace & PT_PTRACE_CAP))
-		|| atomic_read(&current->fs->count) > 1
-		|| atomic_read(&current->files->count) > 1
-		|| atomic_read(&current->sighand->count) > 1;
+		|| atomic_read(&p->fs->count) > 1
+		|| atomic_read(&p->files->count) > 1
+		|| atomic_read(&p->sighand->count) > 1;
 }
 
 void cap_bprm_apply_creds (struct linux_binprm *bprm)
diff -urN a/security/dummy.c b/security/dummy.c
--- a/security/dummy.c	Mon Apr 12 10:38:17 2004
+++ b/security/dummy.c	Mon Apr 12 11:10:50 2004
@@ -174,9 +174,9 @@
 static inline int must_not_trace_exec (struct task_struct *p)
 {
 	return ((p->ptrace & PT_PTRACED) && !(p->ptrace & PT_PTRACE_CAP))
-		|| atomic_read(&current->fs->count) > 1
-		|| atomic_read(&current->files->count) > 1
-		|| atomic_read(&current->sighand->count) > 1;
+		|| atomic_read(&p->fs->count) > 1
+		|| atomic_read(&p->files->count) > 1
+		|| atomic_read(&p->sighand->count) > 1;
 }
 
 static void dummy_bprm_apply_creds (struct linux_binprm *bprm)
-
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/
\
 
 \ /
  Last update: 2005-03-22 14:02    [from the cache]
©2003-2008