diff options
author | David Howells <dhowells@redhat.com> | 2009-05-08 13:55:22 +0100 |
---|---|---|
committer | James Morris <jmorris@namei.org> | 2009-05-11 08:15:36 +1000 |
commit | 5e751e992f3fb08ba35e1ca8095ec8fbf9eda523 (patch) | |
tree | 711b1b47622dc9661f1d3d9c67d55c0b21456e8c /kernel/ptrace.c | |
parent | d254117099d711f215e62427f55dfb8ebd5ad011 (diff) | |
download | lwn-5e751e992f3fb08ba35e1ca8095ec8fbf9eda523.tar.gz lwn-5e751e992f3fb08ba35e1ca8095ec8fbf9eda523.zip |
CRED: Rename cred_exec_mutex to reflect that it's a guard against ptrace
Rename cred_exec_mutex to reflect that it's a guard against foreign
intervention on a process's credential state, such as is made by ptrace(). The
attachment of a debugger to a process affects execve()'s calculation of the new
credential state - _and_ also setprocattr()'s calculation of that state.
Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: James Morris <jmorris@namei.org>
Diffstat (limited to 'kernel/ptrace.c')
-rw-r--r-- | kernel/ptrace.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/kernel/ptrace.c b/kernel/ptrace.c index 0692ab5a0d67..27ac80298bfa 100644 --- a/kernel/ptrace.c +++ b/kernel/ptrace.c @@ -185,10 +185,11 @@ int ptrace_attach(struct task_struct *task) if (same_thread_group(task, current)) goto out; - /* Protect exec's credential calculations against our interference; - * SUID, SGID and LSM creds get determined differently under ptrace. + /* Protect the target's credential calculations against our + * interference; SUID, SGID and LSM creds get determined differently + * under ptrace. */ - retval = mutex_lock_interruptible(&task->cred_exec_mutex); + retval = mutex_lock_interruptible(&task->cred_guard_mutex); if (retval < 0) goto out; @@ -232,7 +233,7 @@ repeat: bad: write_unlock_irqrestore(&tasklist_lock, flags); task_unlock(task); - mutex_unlock(&task->cred_exec_mutex); + mutex_unlock(&task->cred_guard_mutex); out: return retval; } |