deal with races in /proc/*/{syscall,stack,personality}
authorAl Viro <viro@zeniv.linux.org.uk>
Wed, 23 Mar 2011 19:52:50 +0000 (15:52 -0400)
committerAl Viro <viro@zeniv.linux.org.uk>
Wed, 23 Mar 2011 21:01:18 +0000 (17:01 -0400)
commita9712bc12c40c172e393f85a9b2ba8db4bf59509
treec40217e028ae937da7ad94e249e2247191ffcc8f
parent198214a7ee50375fa71a65e518341980cfd4b2f0
deal with races in /proc/*/{syscall,stack,personality}

All of those are rw-r--r-- and all are broken for suid - if you open
a file before the target does suid-root exec, you'll be still able
to access it.  For personality it's not a big deal, but for syscall
and stack it's a real problem.

Fix: check that task is tracable for you at the time of read().

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
fs/proc/base.c