]> git.kernelconcepts.de Git - karo-tx-linux.git/commit
sysfs: tightened sysfs permission checks
authorGobinda Charan Maji <gobinda.cemk07@gmail.com>
Wed, 27 May 2015 01:39:38 +0000 (11:09 +0930)
committerRusty Russell <rusty@rustcorp.com.au>
Thu, 28 May 2015 02:02:09 +0000 (11:32 +0930)
commit28b8d0c8f560300836dff352348e513cdf328e50
tree1386c9e820f553b034a29219a9fc8349b533c258
parent4f666546d047752c17265f4641cc9470c1cbaed4
sysfs: tightened sysfs permission checks

There were some inconsistency in restriction to VERIFY_OCTAL_PERMISSIONS().
Previously the test was "User perms >= group perms >= other perms". The
permission field of User, Group or Other consists of three bits. LSB is
EXECUTE permission, MSB is READ permission and the middle bit is WRITE
permission. But logically WRITE is "more privileged" than READ.

Say for example, permission value is "0430". Here User has only READ
permission whereas Group has both WRITE and EXECUTE permission.

So, the checks could be tightened and the tests are separated to
USER_READABLE >= GROUP_READABLE >= OTHER_READABLE,
USER_WRITABLE >= GROUP_WRITABLE and OTHER_WRITABLE is not permitted.

Signed-off-by: Gobinda Charan Maji <gobinda.cemk07@gmail.com>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
include/linux/kernel.h