]> Gentwo Git Trees - linux/.git/commit
smack: fix bug: SMACK64TRANSMUTE set on non-directory
authorKonstantin Andreev <andreev@swemel.ru>
Mon, 16 Jun 2025 01:07:29 +0000 (04:07 +0300)
committerCasey Schaufler <casey@schaufler-ca.com>
Sun, 22 Jun 2025 15:51:32 +0000 (08:51 -0700)
commit195da3ff244deff119c3f5244b464b2236ea1725
tree2f26876f9b3f9e4b553be31fa955cc2d455c189e
parent635a01da8385fc00a144ec24684100bd1aa9db11
smack: fix bug: SMACK64TRANSMUTE set on non-directory

When a new file system object is created
and the conditions for label transmutation are met,
the SMACK64TRANSMUTE extended attribute is set
on the object regardless of its type:
file, pipe, socket, symlink, or directory.

However,
SMACK64TRANSMUTE may only be set on directories.

This bug is a combined effect of the commits [1] and [2]
which both transfer functionality
from smack_d_instantiate() to smack_inode_init_security(),
but only in part.

Commit [1] set blank  SMACK64TRANSMUTE on improper object types.
Commit [2] set "TRUE" SMACK64TRANSMUTE on improper object types.

[1] 2023-06-10,
Fixes: baed456a6a2f ("smack: Set the SMACK64TRANSMUTE xattr in smack_inode_init_security()")
Link: https://lore.kernel.org/linux-security-module/20230610075738.3273764-3-roberto.sassu@huaweicloud.com/
[2] 2023-11-16,
Fixes: e63d86b8b764 ("smack: Initialize the in-memory inode in smack_inode_init_security()")
Link: https://lore.kernel.org/linux-security-module/20231116090125.187209-5-roberto.sassu@huaweicloud.com/
Signed-off-by: Konstantin Andreev <andreev@swemel.ru>
Signed-off-by: Casey Schaufler <casey@schaufler-ca.com>
security/smack/smack_lsm.c