diff options
author | Roberto Sassu <roberto.sassu@huawei.com> | 2023-03-14 09:17:15 +0100 |
---|---|---|
committer | Paul Moore <paul@paul-moore.com> | 2023-03-23 19:32:02 -0400 |
commit | 52ca4b6435a493e47aaa98e7345e19e1e8710b13 (patch) | |
tree | eba45774b7d8410c66ad9874eea704d8ac743f41 /fs/ocfs2 | |
parent | b9b8701b43146f5ebd7fe13d89103cfc545cda34 (diff) | |
download | lwn-52ca4b6435a493e47aaa98e7345e19e1e8710b13.tar.gz lwn-52ca4b6435a493e47aaa98e7345e19e1e8710b13.zip |
reiserfs: Switch to security_inode_init_security()
In preparation for removing security_old_inode_init_security(), switch to
security_inode_init_security(). Commit 572302af1258 ("reiserfs: Add missing
calls to reiserfs_security_free()") fixed possible memory leaks and another
issue related to adding an xattr at inode creation time.
Define the initxattrs callback reiserfs_initxattrs(), to populate the
name/value/len triple in the reiserfs_security_handle() with the first
xattr provided by LSMs. Make a copy of the xattr value, as
security_inode_init_security() frees it.
After the call to security_inode_init_security(), remove the check for
returning -EOPNOTSUPP, as security_inode_init_security() changes it to
zero.
Multiple xattrs are currently not supported, as the
reiserfs_security_handle structure is exported to user space. As a
consequence, even if EVM is invoked, it will not provide an xattr (if it
is not the first to set it, its xattr will be discarded; if it is the
first, it does not have xattrs to calculate the HMAC on).
Signed-off-by: Roberto Sassu <roberto.sassu@huawei.com>
Reviewed-by: Casey Schaufler <casey@schaufler-ca.com>
Reviewed-by: Mimi Zohar <zohar@linux.ibm.com>
Signed-off-by: Paul Moore <paul@paul-moore.com>
Diffstat (limited to 'fs/ocfs2')
0 files changed, 0 insertions, 0 deletions