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