Merge tag 'v3.10.98' into update
This is the 3.10.98 stable release
This commit is contained in:
@@ -153,12 +153,17 @@ int cap_ptrace_access_check(struct task_struct *child, unsigned int mode)
|
||||
{
|
||||
int ret = 0;
|
||||
const struct cred *cred, *child_cred;
|
||||
const kernel_cap_t *caller_caps;
|
||||
|
||||
rcu_read_lock();
|
||||
cred = current_cred();
|
||||
child_cred = __task_cred(child);
|
||||
if (mode & PTRACE_MODE_FSCREDS)
|
||||
caller_caps = &cred->cap_effective;
|
||||
else
|
||||
caller_caps = &cred->cap_permitted;
|
||||
if (cred->user_ns == child_cred->user_ns &&
|
||||
cap_issubset(child_cred->cap_permitted, cred->cap_permitted))
|
||||
cap_issubset(child_cred->cap_permitted, *caller_caps))
|
||||
goto out;
|
||||
if (ns_capable(child_cred->user_ns, CAP_SYS_PTRACE))
|
||||
goto out;
|
||||
|
||||
Reference in New Issue
Block a user