1 | /* SPDX-License-Identifier: GPL-2.0 */ |
2 | |
3 | #ifndef BTRFS_ACL_H |
4 | #define BTRFS_ACL_H |
5 | |
6 | struct posix_acl; |
7 | struct inode; |
8 | struct btrfs_trans_handle; |
9 | |
10 | #ifdef CONFIG_BTRFS_FS_POSIX_ACL |
11 | |
12 | struct mnt_idmap; |
13 | struct dentry; |
14 | |
15 | struct posix_acl *btrfs_get_acl(struct inode *inode, int type, bool rcu); |
16 | int btrfs_set_acl(struct mnt_idmap *idmap, struct dentry *dentry, |
17 | struct posix_acl *acl, int type); |
18 | int __btrfs_set_acl(struct btrfs_trans_handle *trans, struct inode *inode, |
19 | struct posix_acl *acl, int type); |
20 | |
21 | #else |
22 | |
23 | #include <linux/errno.h> |
24 | |
25 | struct btrfs_trans_handle; |
26 | |
27 | #define btrfs_get_acl NULL |
28 | #define btrfs_set_acl NULL |
29 | static inline int __btrfs_set_acl(struct btrfs_trans_handle *trans, |
30 | struct inode *inode, struct posix_acl *acl, |
31 | int type) |
32 | { |
33 | return -EOPNOTSUPP; |
34 | } |
35 | |
36 | #endif |
37 | |
38 | #endif |
39 | |