Home
last modified time | relevance | path

Searched refs:xattr (Results 1 – 25 of 98) sorted by relevance

1234

/linux-6.15/security/integrity/evm/
H A Devm_secfs.c133 struct xattr_list *xattr; in evm_read_xattrs() local
143 if (!xattr->enabled) in evm_read_xattrs()
156 if (!xattr->enabled) in evm_read_xattrs()
204 if (!xattr) { in evm_write_xattrs()
209 xattr->enabled = true; in evm_write_xattrs()
211 if (IS_ERR(xattr->name)) { in evm_write_xattrs()
213 xattr->name = NULL; in evm_write_xattrs()
218 len = strlen(xattr->name); in evm_write_xattrs()
273 if (xattr) { in evm_write_xattrs()
274 kfree(xattr->name); in evm_write_xattrs()
[all …]
H A Devm_crypto.c228 struct xattr_list *xattr; in evm_calc_hmac_or_hash() local
251 if (strcmp(xattr->name, XATTR_NAME_IMA) == 0) in evm_calc_hmac_or_hash()
262 && !strcmp(xattr->name, req_xattr_name)) { in evm_calc_hmac_or_hash()
284 xattr->name, NULL, 0); in evm_calc_hmac_or_hash()
287 dentry->d_name.name, xattr->name, size, in evm_calc_hmac_or_hash()
388 data.hdr.xattr.sha1.type = EVM_XATTR_HMAC; in evm_update_evmxattr()
391 &data.hdr.xattr.data[1], in evm_update_evmxattr()
403 const struct xattr *xattr; in evm_init_hmac() local
411 for (xattr = xattrs; xattr->name; xattr++) { in evm_init_hmac()
412 if (!evm_protected_xattr(xattr->name)) in evm_init_hmac()
[all …]
H A Devm_main.c134 struct xattr_list *xattr; in evm_find_protected_xattrs() local
304 struct xattr_list *xattr; in evm_protected_xattr_common() local
308 if (!all_xattrs && !xattr->enabled) in evm_protected_xattr_common()
311 if ((strlen(xattr->name) == namelen) in evm_protected_xattr_common()
354 struct xattr_list *xattr; in evm_read_protected_xattrs() local
359 xattr->name, NULL, 0); in evm_read_protected_xattrs()
367 size = strlen(xattr->name) + 1; in evm_read_protected_xattrs()
1018 struct xattr *xattr, *evm_xattr; in evm_inode_init_security() local
1030 for (xattr = xattrs; xattr->name; xattr++) { in evm_inode_init_security()
1031 if (evm_protected_xattr(xattr->name)) in evm_inode_init_security()
[all …]
H A Devm_posix_acl.c12 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()
/linux-6.15/fs/ceph/
H A Dxattr.c616 if (xattr) in __set_xattr()
624 if (!xattr) { in __set_xattr()
685 c = strncmp(name, xattr->name, xattr->name_len); in __get_xattr()
715 kfree(xattr); in __free_xattr()
721 if (!xattr) in __remove_xattr()
751 memcpy(dest, xattr->name, xattr->name_len); in __copy_xattr_names()
930 memcpy(dest, xattr->name, xattr->name_len); in __ceph_build_xattrs_blob()
933 memcpy(dest, xattr->val, xattr->val_len); in __ceph_build_xattrs_blob()
1043 if (!xattr) in __ceph_getxattr()
1054 memcpy(value, xattr->val, xattr->val_len); in __ceph_getxattr()
[all …]
/linux-6.15/fs/hfsplus/
H A Dxattr_security.c37 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-6.15/fs/bcachefs/
H A Dxattr.c99 bkey_fsck_err_on(memchr(xattr.v->x_name, '\0', xattr.v->x_name_len), in bch2_xattr_validate()
129 name_len, xattr.v->x_name, in bch2_xattr_to_text()
188 struct bkey_i_xattr *xattr; in bch2_xattr_set() local
197 if (IS_ERR(xattr)) in bch2_xattr_set()
198 return PTR_ERR(xattr); in bch2_xattr_set()
200 bkey_xattr_init(&xattr->k_i); in bch2_xattr_set()
201 xattr->k.u64s = u64s; in bch2_xattr_set()
202 xattr->v.x_type = type; in bch2_xattr_set()
203 xattr->v.x_name_len = namelen; in bch2_xattr_set()
209 inum, &xattr->k_i, in bch2_xattr_set()
[all …]
H A Dacl.c195 struct bkey_i_xattr *xattr; in bch2_acl_to_xattr() local
225 if (IS_ERR(xattr)) in bch2_acl_to_xattr()
226 return xattr; in bch2_acl_to_xattr()
228 bkey_xattr_init(&xattr->k_i); in bch2_acl_to_xattr()
229 xattr->k.u64s = u64s; in bch2_acl_to_xattr()
231 xattr->v.x_name_len = 0; in bch2_acl_to_xattr()
267 return xattr; in bch2_acl_to_xattr()
323 struct bkey_i_xattr *xattr = in bch2_set_acl_trans() local
325 if (IS_ERR(xattr)) in bch2_set_acl_trans()
326 return PTR_ERR(xattr); in bch2_set_acl_trans()
[all …]
/linux-6.15/fs/jffs2/
H A Dsecurity.c27 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-6.15/fs/ext2/
H A Dxattr_security.c31 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-6.15/fs/ext4/
H A Dxattr_security.c36 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-6.15/fs/jfs/
H A Dxattr.c447 ea_buf->xattr = NULL; in ea_get()
490 if (ea_buf->xattr == NULL) in ea_get()
499 kfree(ea_buf->xattr); in ea_get()
500 ea_buf->xattr = NULL; in ea_get()
536 ea_buf->xattr = ea_buf->mp->data; in ea_get()
556 ea_buf->xattr = ea_buf->mp->data; in ea_get()
590 kfree(ea_buf->xattr); in ea_release()
620 kfree(ea_buf->xattr); in ea_put()
1025 const struct xattr *xattr; in jfs_initxattrs() local
1030 for (xattr = xattr_array; xattr->name != NULL; xattr++) { in jfs_initxattrs()
[all …]
/linux-6.15/Documentation/translations/zh_CN/security/
H A DIMA-templates.rst72 - 'xattrnames':xattr名称的列表(由``|``分隔),仅当xattr存在时;
73 - 'xattrlengths':xattr长度的列表(u32),仅当xattr存在时;
74 - 'xattrvalues':xattr值的列表;
/linux-6.15/fs/squashfs/
H A Dxattr.c32 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()
H A Dinode.c200 xattr_id = le32_to_cpu(sqsh_ino->xattr); in squashfs_read_inode()
254 xattr_id = le32_to_cpu(sqsh_ino->xattr); in squashfs_read_inode()
297 __le32 xattr; in squashfs_read_inode() local
303 err = squashfs_read_metadata(sb, &xattr, &block, in squashfs_read_inode()
304 &offset, sizeof(xattr)); in squashfs_read_inode()
307 xattr_id = le32_to_cpu(xattr); in squashfs_read_inode()
351 xattr_id = le32_to_cpu(sqsh_ino->xattr); in squashfs_read_inode()
391 xattr_id = le32_to_cpu(sqsh_ino->xattr); in squashfs_read_inode()
406 &squashfs_i(inode)->xattr); in squashfs_read_inode()
H A Dxattr_id.c29 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()
H A Dsquashfs_fs.h296 __le32 xattr; member
319 __le32 xattr; member
361 __le32 xattr; member
392 __le32 xattr; member
441 __le64 xattr; member
/linux-6.15/fs/
H A Dxattr.c1212 if (xattr) in simple_xattr_free()
1213 kfree(xattr->name); in simple_xattr_free()
1214 kvfree(xattr); in simple_xattr_free()
1279 struct simple_xattr *xattr; in rbtree_simple_xattr_node_cmp() local
1310 ret = xattr->size; in simple_xattr_get()
1312 if (size < xattr->size) in simple_xattr_get()
1315 memcpy(buffer, xattr->value, xattr->size); in simple_xattr_get()
1463 struct simple_xattr *xattr; in simple_xattr_list() local
1565 struct simple_xattr *xattr; in simple_xattrs_free() local
1573 xattr->size); in simple_xattrs_free()
[all …]
/linux-6.15/fs/btrfs/
H A Dxattr.c499 const struct xattr *xattr_array, void *fs_private) in btrfs_initxattrs()
502 const struct xattr *xattr; in btrfs_initxattrs() local
512 for (xattr = xattr_array; xattr->name != NULL; xattr++) { in btrfs_initxattrs()
514 strlen(xattr->name) + 1, GFP_KERNEL); in btrfs_initxattrs()
520 strcpy(name + XATTR_SECURITY_PREFIX_LEN, xattr->name); in btrfs_initxattrs()
525 ret = btrfs_setxattr(trans, inode, name, xattr->value, in btrfs_initxattrs()
526 xattr->value_len, 0); in btrfs_initxattrs()
/linux-6.15/fs/ubifs/
H A Dxattr.c113 ui->xattr = 1; in create_xattr()
243 if (ubifs_inode(inode)->xattr) in iget_xattr()
525 ubifs_assert(c, ubifs_inode(xino)->xattr); in ubifs_purge_xattrs()
605 static int init_xattrs(struct inode *inode, const struct xattr *xattr_array, in init_xattrs()
608 const struct xattr *xattr; in init_xattrs() local
612 for (xattr = xattr_array; xattr->name != NULL; xattr++) { in init_xattrs()
614 strlen(xattr->name) + 1, GFP_NOFS); in init_xattrs()
620 strcpy(name + XATTR_SECURITY_PREFIX_LEN, xattr->name); in init_xattrs()
625 err = ubifs_xattr_set(inode, name, xattr->value, in init_xattrs()
626 xattr->value_len, 0, false); in init_xattrs()
/linux-6.15/Documentation/filesystems/
H A Derofs.rst107 (no)user_xattr Setup Extended User Attributes. Note: xattr is enabled
228 Each share xattr can also be directly found by the following formula:
229 xattr offset = xattr_blkaddr * block_size + 4 * xattr_id
236 | ... | xattr_entry | xattr data | ... | xattr_entry | xattr data ...
284 overall idea is that, apart from the existing predefined prefixes, the xattr
285 entry could also refer to user-specified long xattr name prefixes, e.g.
288 When referring to a long xattr name prefix, the highest bit (bit 7) of
293 the full xattr name matches exactly as its long xattr name prefix.
295 All long xattr prefixes are stored one by one in the packed inode as long as
298 long xattr name prefixes, while (xattr_prefix_start * 4) indicates the start
[all …]
H A Dsquashfs.rst154 | xattr |
161 xattr tables are written.
278 The xattr table contains extended attributes for each inode. The xattrs
280 name and value field. The type field encodes the xattr prefix
283 is stored inline (in which case the value field contains the xattr value),
290 The xattr lists are packed into compressed 8K metadata blocks.
292 location of the xattr list inside each inode, a 32-bit xattr id
293 is stored. This xattr id is mapped into the location of the xattr
294 list using a second xattr id lookup table.
/linux-6.15/include/linux/
H A Devm.h22 const struct qstr *qstr, struct xattr *xattrs,
58 struct xattr *xattrs, in evm_inode_init_security()
H A Dlsm_hooks.h186 static inline struct xattr *lsm_get_xattr_slot(struct xattr *xattrs, in lsm_get_xattr_slot()
/linux-6.15/fs/f2fs/
H A Dxattr.c138 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()

1234