[PATCH v2] security, fs, nfs, net: update security_inode_listsecurity() interface
Kuniyuki Iwashima
kuniyu at amazon.com
Wed May 21 00:31:49 UTC 2025
From: Stephen Smalley <stephen.smalley.work at gmail.com>
Date: Mon, 28 Apr 2025 15:50:19 -0400
> Update the security_inode_listsecurity() interface to allow
> use of the xattr_list_one() helper and update the hook
> implementations.
>
> Link: https://lore.kernel.org/selinux/20250424152822.2719-1-stephen.smalley.work@gmail.com/
>
> Signed-off-by: Stephen Smalley <stephen.smalley.work at gmail.com>
[...]
> diff --git a/net/socket.c b/net/socket.c
> index 9a0e720f0859..bbcaa3371fcd 100644
> --- a/net/socket.c
> +++ b/net/socket.c
> @@ -560,17 +560,14 @@ static ssize_t sockfs_listxattr(struct dentry *dentry, char *buffer,
> size_t size)
> {
> ssize_t len;
> - ssize_t used = 0;
> + ssize_t used, remaining;
> + int err;
Paul: Could you sort this in the reverse xmas tree order before merging ?
https://docs.kernel.org/process/maintainer-netdev.html#local-variable-ordering-reverse-xmas-tree-rcs
otherwise the socket part looks good to me:
Reviewed-by: Kuniyuki Iwashima <kuniyu at amazon.com>
>
> - len = security_inode_listsecurity(d_inode(dentry), buffer, size);
> - if (len < 0)
> - return len;
> - used += len;
> - if (buffer) {
> - if (size < used)
> - return -ERANGE;
> - buffer += len;
> - }
> + err = security_inode_listsecurity(d_inode(dentry), &buffer,
> + &remaining);
> + if (err)
> + return err;
> + used = size - remaining;
>
> len = (XATTR_NAME_SOCKPROTONAME_LEN + 1);
> used += len;
More information about the Linux-security-module-archive
mailing list