diff options
author | Rafal Krypa <r.krypa@samsung.com> | 2016-12-09 14:03:04 +0100 |
---|---|---|
committer | Casey Schaufler <casey@schaufler-ca.com> | 2017-01-10 09:47:20 -0800 |
commit | 805b65a80bed029572c6462cc4be0a260e1482e9 (patch) | |
tree | f21d839811af68fe82c609cf3bdb7b32d33f1c5e /lib/dynamic_debug.c | |
parent | c9d238a18baa92600ba015d6d6c2cde53f55c572 (diff) | |
download | op-kernel-dev-805b65a80bed029572c6462cc4be0a260e1482e9.zip op-kernel-dev-805b65a80bed029572c6462cc4be0a260e1482e9.tar.gz |
Smack: fix d_instantiate logic for sockfs and pipefs
Since 4b936885a (v2.6.32) all inodes on sockfs and pipefs are disconnected.
It caused filesystem specific code in smack_d_instantiate to be skipped,
because all inodes on those pseudo filesystems were treated as root inodes.
As a result all sockfs inodes had the Smack label set to floor.
In most cases access checks for sockets use socket_smack data so the inode
label is not important. But there are special cases that were broken.
One example would be calling fcntl with F_SETOWN command on a socket fd.
Now smack_d_instantiate expects all pipefs and sockfs inodes to be
disconnected and has the logic in appropriate place.
Signed-off-by: Rafal Krypa <r.krypa@samsung.com>
Signed-off-by: Casey Schaufler <casey@schaufler-ca.com>
Diffstat (limited to 'lib/dynamic_debug.c')
0 files changed, 0 insertions, 0 deletions