^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) /* SPDX-License-Identifier: GPL-2.0 */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2) /*
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) * Copyright (C) 2014 Filipe David Borba Manana <fdmanana@gmail.com>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4) */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6) #ifndef BTRFS_PROPS_H
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7) #define BTRFS_PROPS_H
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9) #include "ctree.h"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) void __init btrfs_props_init(void);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) int btrfs_set_prop(struct btrfs_trans_handle *trans, struct inode *inode,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) const char *name, const char *value, size_t value_len,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) int flags);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) int btrfs_validate_prop(const char *name, const char *value, size_t value_len);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) int btrfs_load_inode_props(struct inode *inode, struct btrfs_path *path);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) int btrfs_inode_inherit_props(struct btrfs_trans_handle *trans,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) struct inode *inode,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) struct inode *dir);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) int btrfs_subvol_inherit_props(struct btrfs_trans_handle *trans,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) struct btrfs_root *root,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) struct btrfs_root *parent_root);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) #endif