add some long-missing capabilities to fs_mask
authorSerge E. Hallyn <serue@us.ibm.com>
Mon, 13 Apr 2009 14:56:14 +0000 (09:56 -0500)
committerLinus Torvalds <torvalds@linux-foundation.org>
Mon, 13 Apr 2009 15:32:28 +0000 (08:32 -0700)
commit0ad30b8fd5fe798aae80df6344b415d8309342cc
treea62ffb310ab370df11a8fe2ba2995e952b6522be
parentd3ab02a7c51fcbceafe999a515cc8bc4f0d0cfee
add some long-missing capabilities to fs_mask

When POSIX capabilities were introduced during the 2.1 Linux
cycle, the fs mask, which represents the capabilities which having
fsuid==0 is supposed to grant, did not include CAP_MKNOD and
CAP_LINUX_IMMUTABLE.  However, before capabilities the privilege
to call these did in fact depend upon fsuid==0.

This patch introduces those capabilities into the fsmask,
restoring the old behavior.

See the thread starting at http://lkml.org/lkml/2009/3/11/157 for
reference.

Note that if this fix is deemed valid, then earlier kernel versions (2.4
and 2.2) ought to be fixed too.

Changelog:
[Mar 23] Actually delete old CAP_FS_SET definition...
[Mar 20] Updated against J. Bruce Fields's patch

Reported-by: Igor Zhbanov <izh1979@gmail.com>
Signed-off-by: Serge E. Hallyn <serue@us.ibm.com>
Cc: stable@kernel.org
Cc: J. Bruce Fields <bfields@citi.umich.edu>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
include/linux/capability.h