[PATCH 60/97] kernfs: remove lsm_context scaffolding
Casey Schaufler
casey at schaufler-ca.com
Thu Feb 28 22:18:56 UTC 2019
Change the parameters to kernfs_node_setsecdata from a
data/length pair to a lsm_context struct as both the function
it calls and the function that calls it want that.
Signed-off-by: Casey Schaufler <casey at schaufler-ca.com>
---
fs/kernfs/inode.c | 19 +++++++------------
1 file changed, 7 insertions(+), 12 deletions(-)
diff --git a/fs/kernfs/inode.c b/fs/kernfs/inode.c
index 6db050b7c6ab..3d47fd74cc8c 100644
--- a/fs/kernfs/inode.c
+++ b/fs/kernfs/inode.c
@@ -135,20 +135,15 @@ int kernfs_iop_setattr(struct dentry *dentry, struct iattr *iattr)
return error;
}
-static int kernfs_node_setsecdata(struct kernfs_iattrs *attrs, void **secdata,
- u32 *secdata_len)
+static int kernfs_node_setsecdata(struct kernfs_iattrs *attrs,
+ struct lsm_context *cp)
{
- void *old_secdata;
- size_t old_secdata_len;
+ struct lsm_context old_context;
- old_secdata = attrs->ia_context.context;
- old_secdata_len = attrs->ia_context.len;
+ old_context = attrs->ia_context;
+ attrs->ia_context = *cp;
+ *cp = old_context;
- attrs->ia_context.context = *secdata;
- attrs->ia_context.len = *secdata_len;
-
- *secdata = old_secdata;
- *secdata_len = old_secdata_len;
return 0;
}
@@ -363,7 +358,7 @@ static int kernfs_security_xattr_set(const struct xattr_handler *handler,
return error;
mutex_lock(&kernfs_mutex);
- error = kernfs_node_setsecdata(attrs, (void **)&lc.context, &lc.len);
+ error = kernfs_node_setsecdata(attrs, &lc);
mutex_unlock(&kernfs_mutex);
if (lc.context)
--
2.17.0
More information about the Linux-security-module-archive
mailing list