| /linux-6.15/include/linux/ |
| H A D | xattr.h | 120 void simple_xattrs_init(struct simple_xattrs *xattrs); 121 void simple_xattrs_free(struct simple_xattrs *xattrs, size_t *freed_space); 125 int simple_xattr_get(struct simple_xattrs *xattrs, const char *name, 127 struct simple_xattr *simple_xattr_set(struct simple_xattrs *xattrs, 130 ssize_t simple_xattr_list(struct inode *inode, struct simple_xattrs *xattrs, 132 void simple_xattr_add(struct simple_xattrs *xattrs,
|
| H A D | lsm_hooks.h | 186 static inline struct xattr *lsm_get_xattr_slot(struct xattr *xattrs, in lsm_get_xattr_slot() argument 189 if (unlikely(!xattrs)) in lsm_get_xattr_slot() 191 return &xattrs[(*xattr_count)++]; in lsm_get_xattr_slot()
|
| H A D | evm.h | 22 const struct qstr *qstr, struct xattr *xattrs, 58 struct xattr *xattrs, in evm_inode_init_security() argument
|
| H A D | shmem_fs.h | 35 struct simple_xattrs xattrs; /* list of xattrs */ member
|
| /linux-6.15/security/integrity/evm/ |
| H A D | Kconfig | 32 bool "Additional SMACK xattrs" 36 Include additional SMACK xattrs for HMAC calculation. 38 In addition to the original security xattrs (eg. security.selinux, 41 Smack xattrs: security.SMACK64EXEC, security.SMACK64TRANSMUTE and 53 Allow userland to provide additional xattrs for HMAC calculation. 55 When this option is enabled, root can add additional xattrs to the
|
| H A D | evm_main.c | 89 int i, xattrs; in evm_init_config() local 91 xattrs = ARRAY_SIZE(evm_config_default_xattrnames); in evm_init_config() 94 for (i = 0; i < xattrs; i++) { in evm_init_config() 1014 const struct qstr *qstr, struct xattr *xattrs, in evm_inode_init_security() argument 1022 if (!(evm_initialized & EVM_INIT_HMAC) || !xattrs) in evm_inode_init_security() 1030 for (xattr = xattrs; xattr->name; xattr++) { in evm_inode_init_security() 1039 evm_xattr = lsm_get_xattr_slot(xattrs, xattr_count); in evm_inode_init_security() 1053 rc = evm_init_hmac(inode, xattrs, xattr_data->digest); in evm_inode_init_security()
|
| H A D | evm.h | 84 int evm_init_hmac(struct inode *inode, const struct xattr *xattrs,
|
| H A D | evm_crypto.c | 399 int evm_init_hmac(struct inode *inode, const struct xattr *xattrs, in evm_init_hmac() argument 411 for (xattr = xattrs; xattr->name; xattr++) { in evm_init_hmac()
|
| /linux-6.15/fs/ |
| H A D | xattr.c | 1306 read_lock(&xattrs->lock); in simple_xattr_get() 1318 read_unlock(&xattrs->lock); in simple_xattr_get() 1369 write_lock(&xattrs->lock); in simple_xattr_set() 1370 rbp = &xattrs->rb_root.rb_node; in simple_xattr_set() 1419 write_unlock(&xattrs->lock); in simple_xattr_set() 1483 read_lock(&xattrs->lock); in simple_xattr_list() 1499 read_unlock(&xattrs->lock); in simple_xattr_list() 1532 write_lock(&xattrs->lock); in simple_xattr_add() 1534 write_unlock(&xattrs->lock); in simple_xattr_add() 1545 xattrs->rb_root = RB_ROOT; in simple_xattrs_init() [all …]
|
| /linux-6.15/fs/kernfs/ |
| H A D | inode.c | 49 simple_xattrs_init(&kn->iattr->xattrs); in __kernfs_iattrs() 148 return simple_xattr_list(d_inode(dentry), &attrs->xattrs, buf, size); in kernfs_iop_listxattr() 302 return simple_xattr_get(&attrs->xattrs, name, value, size); in kernfs_xattr_get() 313 old_xattr = simple_xattr_set(&attrs->xattrs, name, value, size, flags); in kernfs_xattr_set() 345 struct simple_xattrs *xattrs, in kernfs_vfs_user_xattr_add() argument 363 old_xattr = simple_xattr_set(xattrs, full_name, value, size, flags); in kernfs_vfs_user_xattr_add() 384 struct simple_xattrs *xattrs, in kernfs_vfs_user_xattr_rm() argument 391 old_xattr = simple_xattr_set(xattrs, full_name, value, size, flags); in kernfs_vfs_user_xattr_rm() 422 return kernfs_vfs_user_xattr_add(kn, full_name, &attrs->xattrs, in kernfs_vfs_user_xattr_set() 425 return kernfs_vfs_user_xattr_rm(kn, full_name, &attrs->xattrs, in kernfs_vfs_user_xattr_set()
|
| H A D | kernfs-internal.h | 31 struct simple_xattrs xattrs; member
|
| /linux-6.15/fs/smb/client/ |
| H A D | reparse.c | 603 struct wsl_xattr xattrs[] = { in wsl_set_xattrs() local 618 num_xattrs = ARRAY_SIZE(xattrs) - 1; in wsl_set_xattrs() 620 num_xattrs = ARRAY_SIZE(xattrs); in wsl_set_xattrs() 623 xattrs[i].next = ALIGN(sizeof(*ea) + name_size + in wsl_set_xattrs() 624 xattrs[i].size, 4); in wsl_set_xattrs() 625 dlen += xattrs[i].next; in wsl_set_xattrs() 635 next = xattrs[i].next; in wsl_set_xattrs() 639 ea->ea_value_length = cpu_to_le16(xattrs[i].size); in wsl_set_xattrs() 640 memcpy(ea->ea_data, xattrs[i].name, name_size); in wsl_set_xattrs() 642 &xattrs[i].value, xattrs[i].size); in wsl_set_xattrs()
|
| /linux-6.15/fs/ceph/ |
| H A D | xattr.c | 803 struct ceph_inode_xattr **xattrs = NULL; in __build_xattrs() local 827 if (!xattrs) in __build_xattrs() 833 if (!xattrs[i]) in __build_xattrs() 841 kfree(xattrs[i]); in __build_xattrs() 842 kfree(xattrs); in __build_xattrs() 843 xattrs = NULL; in __build_xattrs() 857 0, 0, &xattrs[numattr]); in __build_xattrs() 862 kfree(xattrs); in __build_xattrs() 871 if (xattrs) { in __build_xattrs() 873 kfree(xattrs[i]); in __build_xattrs() [all …]
|
| /linux-6.15/Documentation/filesystems/ |
| H A D | erofs.rst | 172 | ... | inode | xattrs | extents | data inline | ... | inode ... 182 | xattr_ibody_header | shared xattrs | inline xattrs | 218 The size of the optional xattrs is indicated by i_xattr_count in inode 219 header. Large xattrs or xattrs shared by many different files can be 220 stored in shared xattrs metadata rather than inlined right after inode. 222 2. Shared xattrs metadata space 224 Shared xattrs space is similar to the above inode space, started with 280 only a few common prefixes (such as overlayfs xattrs). The predefined prefixes
|
| H A D | overlayfs.rst | 401 appropriate REDIRECT and METACOPY xattrs, and gain access to file on lower 403 "trusted." xattrs will require CAP_SYS_ADMIN. But it should be possible 483 When a layer containing verity xattrs is used, it means that any such 566 that have overlayfs attributes, such as whiteouts or "overlay.*" xattrs, will 570 Overlayfs specific xattrs are escaped by using a special prefix of 770 filesystem that supports xattrs.
|
| /linux-6.15/fs/overlayfs/ |
| H A D | Makefile | 9 copy_up.o export.o params.o xattrs.o
|
| /linux-6.15/Documentation/admin-guide/cifs/ |
| H A D | todo.rst | 36 (stat, statfs, create, unlink, mkdir, xattrs) already have been improved by 49 h) implement support for security and trusted categories of xattrs
|
| /linux-6.15/security/apparmor/include/ |
| H A D | policy.h | 191 char **xattrs; member
|
| /linux-6.15/fs/ubifs/ |
| H A D | Kconfig | 70 Saying Y here includes support for extended attributes (xattrs).
|
| /linux-6.15/Documentation/ABI/testing/ |
| H A D | evm | 6 EVM protects a file's security extended attributes(xattrs)
|
| /linux-6.15/security/apparmor/ |
| H A D | policy_unpack.c | 545 profile->attach.xattrs = kcalloc(size, sizeof(char *), GFP_KERNEL); in unpack_xattrs() 546 if (!profile->attach.xattrs) in unpack_xattrs() 549 if (!aa_unpack_strdup(e, &profile->attach.xattrs[i], NULL)) in unpack_xattrs()
|
| H A D | policy.c | 237 kfree_sensitive(attach->xattrs[i]); in free_attachment() 238 kfree_sensitive(attach->xattrs); in free_attachment()
|
| /linux-6.15/Documentation/filesystems/ext4/ |
| H A D | attributes.rst | 6 Extended attributes (xattrs) are typically stored in a separate data
|
| /linux-6.15/fs/erofs/ |
| H A D | Kconfig | 11 xattrs/data, chunk-based deduplication, multiple devices, etc.) for
|
| /linux-6.15/Documentation/security/ |
| H A D | ipe.rst | 21 as a result, xattrs would have to be protected. This lead to a selection 46 modify filesystem offline, the attacker could wipe all the xattrs - 50 With DM-Verity, as the xattrs are saved as part of the Merkel tree, if
|