xref: /linux/fs/btrfs/props.h (revision 8bc7c5e525584903ea83332e18a2118ed3b1985e)
1 /* SPDX-License-Identifier: GPL-2.0 */
2 /*
3  * Copyright (C) 2014 Filipe David Borba Manana <fdmanana@gmail.com>
4  */
5 
6 #ifndef BTRFS_PROPS_H
7 #define BTRFS_PROPS_H
8 
9 #include <linux/compiler_types.h>
10 
11 struct inode;
12 struct btrfs_inode;
13 struct btrfs_path;
14 struct btrfs_trans_handle;
15 
16 int __init btrfs_props_init(void);
17 
18 int btrfs_set_prop(struct btrfs_trans_handle *trans, struct btrfs_inode *inode,
19 		   const char *name, const char *value, size_t value_len,
20 		   int flags);
21 int btrfs_validate_prop(const struct btrfs_inode *inode, const char *name,
22 			const char *value, size_t value_len);
23 bool btrfs_ignore_prop(const struct btrfs_inode *inode, const char *name);
24 
25 int btrfs_load_inode_props(struct inode *inode, struct btrfs_path *path);
26 
27 int btrfs_inode_inherit_props(struct btrfs_trans_handle *trans,
28 			      struct inode *inode,
29 			      const struct inode *dir);
30 
31 #endif
32