/Linux-v6.1/security/integrity/evm/ |
D | evm_secfs.c | 133 struct xattr_list *xattr; in evm_read_xattrs() local 142 list_for_each_entry(xattr, &evm_config_xattrnames, list) { in evm_read_xattrs() 143 if (!xattr->enabled) in evm_read_xattrs() 146 size += strlen(xattr->name) + 1; in evm_read_xattrs() 155 list_for_each_entry(xattr, &evm_config_xattrnames, list) { in evm_read_xattrs() 156 if (!xattr->enabled) in evm_read_xattrs() 159 sprintf(temp + offset, "%s\n", xattr->name); in evm_read_xattrs() 160 offset += strlen(xattr->name) + 1; in evm_read_xattrs() 184 struct xattr_list *xattr, *tmp; in evm_write_xattrs() local 203 xattr = kmalloc(sizeof(struct xattr_list), GFP_KERNEL); in evm_write_xattrs() [all …]
|
D | evm_posix_acl.c | 12 int posix_xattr_acl(const char *xattr) in posix_xattr_acl() argument 14 int xattr_len = strlen(xattr); in posix_xattr_acl() 17 && (strncmp(XATTR_NAME_POSIX_ACL_ACCESS, xattr, xattr_len) == 0)) in posix_xattr_acl() 20 && (strncmp(XATTR_NAME_POSIX_ACL_DEFAULT, xattr, xattr_len) == 0)) in posix_xattr_acl()
|
D | evm_crypto.c | 217 struct xattr_list *xattr; in evm_calc_hmac_or_hash() local 236 list_for_each_entry_lockless(xattr, &evm_config_xattrnames, list) { in evm_calc_hmac_or_hash() 239 if (strcmp(xattr->name, XATTR_NAME_IMA) == 0) in evm_calc_hmac_or_hash() 246 if (type != EVM_XATTR_PORTABLE_DIGSIG && !xattr->enabled) in evm_calc_hmac_or_hash() 250 && !strcmp(xattr->name, req_xattr_name)) { in evm_calc_hmac_or_hash() 268 size = vfs_getxattr_alloc(&init_user_ns, dentry, xattr->name, in evm_calc_hmac_or_hash() 278 xattr->name, NULL, 0); in evm_calc_hmac_or_hash() 281 dentry->d_name.name, xattr->name, size, in evm_calc_hmac_or_hash() 290 pr_debug("%s: (%zu) [%*phN]", xattr->name, xattr_size, in evm_calc_hmac_or_hash() 293 dump_security_xattr(xattr->name, xattr_value, in evm_calc_hmac_or_hash() [all …]
|
D | evm_main.c | 134 struct xattr_list *xattr; in evm_find_protected_xattrs() local 141 list_for_each_entry_lockless(xattr, &evm_config_xattrnames, list) { in evm_find_protected_xattrs() 142 error = __vfs_getxattr(dentry, inode, xattr->name, NULL, 0); in evm_find_protected_xattrs() 285 struct xattr_list *xattr; in evm_protected_xattr_common() local 288 list_for_each_entry_lockless(xattr, &evm_config_xattrnames, list) { in evm_protected_xattr_common() 289 if (!all_xattrs && !xattr->enabled) in evm_protected_xattr_common() 292 if ((strlen(xattr->name) == namelen) in evm_protected_xattr_common() 293 && (strncmp(req_xattr_name, xattr->name, namelen) == 0)) { in evm_protected_xattr_common() 298 xattr->name + XATTR_SECURITY_PREFIX_LEN, in evm_protected_xattr_common() 336 struct xattr_list *xattr; in evm_read_protected_xattrs() local [all …]
|
D | evm.h | 61 int evm_init_hmac(struct inode *inode, const struct xattr *xattr,
|
/Linux-v6.1/fs/ceph/ |
D | xattr.c | 19 struct ceph_inode_xattr *xattr); 546 struct ceph_inode_xattr *xattr = NULL; in __set_xattr() local 553 xattr = rb_entry(parent, struct ceph_inode_xattr, node); in __set_xattr() 554 c = strncmp(name, xattr->name, min(name_len, xattr->name_len)); in __set_xattr() 560 if (name_len == xattr->name_len) in __set_xattr() 562 else if (name_len < xattr->name_len) in __set_xattr() 567 xattr = NULL; in __set_xattr() 573 if (xattr && (flags & XATTR_CREATE)) in __set_xattr() 575 else if (!xattr && (flags & XATTR_REPLACE)) in __set_xattr() 584 if (xattr) in __set_xattr() [all …]
|
/Linux-v6.1/fs/hfsplus/ |
D | xattr_security.c | 37 const struct xattr *xattr_array, in hfsplus_initxattrs() 40 const struct xattr *xattr; in hfsplus_initxattrs() local 48 for (xattr = xattr_array; xattr->name != NULL; xattr++) { in hfsplus_initxattrs() 50 if (!strcmp(xattr->name, "")) in hfsplus_initxattrs() 55 XATTR_SECURITY_PREFIX_LEN, xattr->name); in hfsplus_initxattrs() 57 XATTR_SECURITY_PREFIX_LEN + strlen(xattr->name), 0, 1); in hfsplus_initxattrs() 60 xattr->value, xattr->value_len, 0); in hfsplus_initxattrs()
|
/Linux-v6.1/fs/jffs2/ |
D | security.c | 27 const struct xattr *xattr_array, void *fs_info) in jffs2_initxattrs() 29 const struct xattr *xattr; in jffs2_initxattrs() local 32 for (xattr = xattr_array; xattr->name != NULL; xattr++) { in jffs2_initxattrs() 34 xattr->name, xattr->value, in jffs2_initxattrs() 35 xattr->value_len, 0); in jffs2_initxattrs()
|
/Linux-v6.1/fs/ext2/ |
D | xattr_security.c | 31 static int ext2_initxattrs(struct inode *inode, const struct xattr *xattr_array, in ext2_initxattrs() 34 const struct xattr *xattr; in ext2_initxattrs() local 37 for (xattr = xattr_array; xattr->name != NULL; xattr++) { in ext2_initxattrs() 39 xattr->name, xattr->value, in ext2_initxattrs() 40 xattr->value_len, 0); in ext2_initxattrs()
|
/Linux-v6.1/fs/ext4/ |
D | xattr_security.c | 36 ext4_initxattrs(struct inode *inode, const struct xattr *xattr_array, in ext4_initxattrs() 39 const struct xattr *xattr; in ext4_initxattrs() local 43 for (xattr = xattr_array; xattr->name != NULL; xattr++) { in ext4_initxattrs() 46 xattr->name, xattr->value, in ext4_initxattrs() 47 xattr->value_len, XATTR_CREATE); in ext4_initxattrs()
|
/Linux-v6.1/fs/jfs/ |
D | xattr.c | 64 struct jfs_ea_list *xattr; /* buffer containing ea list */ member 445 ea_buf->xattr = NULL; in ea_get() 452 ea_buf->xattr = (struct jfs_ea_list *) ji->i_inline_ea; in ea_get() 464 ea_buf->xattr = (struct jfs_ea_list *) ji->i_inline_ea; in ea_get() 487 ea_buf->xattr = kmalloc(ea_buf->max_size, GFP_KERNEL); in ea_get() 488 if (ea_buf->xattr == NULL) in ea_get() 496 if ((rc = ea_read(inode, ea_buf->xattr))) { in ea_get() 497 kfree(ea_buf->xattr); in ea_get() 498 ea_buf->xattr = NULL; in ea_get() 534 ea_buf->xattr = ea_buf->mp->data; in ea_get() [all …]
|
/Linux-v6.1/fs/squashfs/ |
D | xattr.c | 32 u64 start = SQUASHFS_XATTR_BLK(squashfs_i(inode)->xattr) in squashfs_listxattr() 34 int offset = SQUASHFS_XATTR_OFFSET(squashfs_i(inode)->xattr); in squashfs_listxattr() 110 u64 start = SQUASHFS_XATTR_BLK(squashfs_i(inode)->xattr) in squashfs_xattr_get() 112 int offset = SQUASHFS_XATTR_OFFSET(squashfs_i(inode)->xattr); in squashfs_xattr_get() 150 u64 xattr; in squashfs_xattr_get() local 160 xattr = le64_to_cpu(xattr_val); in squashfs_xattr_get() 161 start = SQUASHFS_XATTR_BLK(xattr) + in squashfs_xattr_get() 163 offset = SQUASHFS_XATTR_OFFSET(xattr); in squashfs_xattr_get()
|
D | inode.c | 197 xattr_id = le32_to_cpu(sqsh_ino->xattr); in squashfs_read_inode() 251 xattr_id = le32_to_cpu(sqsh_ino->xattr); in squashfs_read_inode() 289 __le32 xattr; in squashfs_read_inode() local 295 err = squashfs_read_metadata(sb, &xattr, &block, in squashfs_read_inode() 296 &offset, sizeof(xattr)); in squashfs_read_inode() 299 xattr_id = le32_to_cpu(xattr); in squashfs_read_inode() 343 xattr_id = le32_to_cpu(sqsh_ino->xattr); in squashfs_read_inode() 383 xattr_id = le32_to_cpu(sqsh_ino->xattr); in squashfs_read_inode() 398 &squashfs_i(inode)->xattr); in squashfs_read_inode()
|
D | xattr_id.c | 29 int *count, unsigned int *size, unsigned long long *xattr) in squashfs_xattr_lookup() argument 48 *xattr = le64_to_cpu(id.xattr); in squashfs_xattr_lookup()
|
D | squashfs_fs.h | 296 __le32 xattr; member 319 __le32 xattr; member 361 __le32 xattr; member 392 __le32 xattr; member 441 __le64 xattr; member
|
/Linux-v6.1/include/linux/ |
D | xattr.h | 46 struct xattr { struct 108 struct simple_xattr *xattr, *node; in simple_xattrs_free() local 110 list_for_each_entry_safe(xattr, node, &xattrs->head, list) { in simple_xattrs_free() 111 kfree(xattr->name); in simple_xattrs_free() 112 kvfree(xattr); in simple_xattrs_free()
|
D | evm.h | 39 const struct xattr *xattr_array, 40 struct xattr *evm); 112 const struct xattr *xattr_array, in evm_inode_init_security() 113 struct xattr *evm) in evm_inode_init_security()
|
/Linux-v6.1/fs/ |
D | xattr.c | 1023 struct simple_xattr *xattr; in simple_xattr_get() local 1027 list_for_each_entry(xattr, &xattrs->head, list) { in simple_xattr_get() 1028 if (strcmp(name, xattr->name)) in simple_xattr_get() 1031 ret = xattr->size; in simple_xattr_get() 1033 if (size < xattr->size) in simple_xattr_get() 1036 memcpy(buffer, xattr->value, xattr->size); in simple_xattr_get() 1063 struct simple_xattr *xattr; in simple_xattr_set() local 1084 list_for_each_entry(xattr, &xattrs->head, list) { in simple_xattr_set() 1085 if (!strcmp(name, xattr->name)) { in simple_xattr_set() 1087 xattr = new_xattr; in simple_xattr_set() [all …]
|
/Linux-v6.1/fs/btrfs/ |
D | xattr.c | 454 const struct xattr *xattr_array, void *fs_private) in btrfs_initxattrs() 457 const struct xattr *xattr; in btrfs_initxattrs() local 467 for (xattr = xattr_array; xattr->name != NULL; xattr++) { in btrfs_initxattrs() 469 strlen(xattr->name) + 1, GFP_KERNEL); in btrfs_initxattrs() 475 strcpy(name + XATTR_SECURITY_PREFIX_LEN, xattr->name); in btrfs_initxattrs() 476 err = btrfs_setxattr(trans, inode, name, xattr->value, in btrfs_initxattrs() 477 xattr->value_len, 0); in btrfs_initxattrs()
|
/Linux-v6.1/fs/ubifs/ |
D | xattr.c | 126 ui->xattr = 1; in create_xattr() 256 if (ubifs_inode(inode)->xattr) in iget_xattr() 540 ubifs_assert(c, ubifs_inode(xino)->xattr); in ubifs_purge_xattrs() 644 static int init_xattrs(struct inode *inode, const struct xattr *xattr_array, in init_xattrs() 647 const struct xattr *xattr; in init_xattrs() local 651 for (xattr = xattr_array; xattr->name != NULL; xattr++) { in init_xattrs() 653 strlen(xattr->name) + 1, GFP_NOFS); in init_xattrs() 659 strcpy(name + XATTR_SECURITY_PREFIX_LEN, xattr->name); in init_xattrs() 664 err = ubifs_xattr_set(inode, name, xattr->value, in init_xattrs() 665 xattr->value_len, 0, false); in init_xattrs()
|
/Linux-v6.1/Documentation/filesystems/ |
D | squashfs.rst | 96 | xattr | 103 xattr tables are written. 220 The xattr table contains extended attributes for each inode. The xattrs 222 name and value field. The type field encodes the xattr prefix 225 is stored inline (in which case the value field contains the xattr value), 232 The xattr lists are packed into compressed 8K metadata blocks. 234 location of the xattr list inside each inode, a 32-bit xattr id 235 is stored. This xattr id is mapped into the location of the xattr 236 list using a second xattr id lookup table.
|
/Linux-v6.1/fs/f2fs/ |
D | xattr.c | 138 static int f2fs_initxattrs(struct inode *inode, const struct xattr *xattr_array, in f2fs_initxattrs() 141 const struct xattr *xattr; in f2fs_initxattrs() local 144 for (xattr = xattr_array; xattr->name != NULL; xattr++) { in f2fs_initxattrs() 146 xattr->name, xattr->value, in f2fs_initxattrs() 147 xattr->value_len, (struct page *)page, 0); in f2fs_initxattrs()
|
/Linux-v6.1/Documentation/filesystems/ext4/ |
D | eainode.rst | 11 inode's i_atime field is used to store a checksum of the xattr value; 13 sharing of large xattr values between multiple owning inodes. For
|
/Linux-v6.1/Documentation/security/ |
D | IMA-templates.rst | 82 - 'xattrnames': a list of xattr names (separated by ``|``), only if the xattr is 84 - 'xattrlengths': a list of xattr lengths (u32), only if the xattr is present; 85 - 'xattrvalues': a list of xattr values;
|
/Linux-v6.1/fs/xfs/ |
D | xfs_iops.c | 49 const struct xattr *xattr_array, in xfs_initxattrs() 52 const struct xattr *xattr; in xfs_initxattrs() local 56 for (xattr = xattr_array; xattr->name != NULL; xattr++) { in xfs_initxattrs() 60 .name = xattr->name, in xfs_initxattrs() 61 .namelen = strlen(xattr->name), in xfs_initxattrs() 62 .value = xattr->value, in xfs_initxattrs() 63 .valuelen = xattr->value_len, in xfs_initxattrs()
|