GNU Linux-libre 5.19-rc6-gnu
[releases.git] / fs / xfs / xfs_acl.h
1 // SPDX-License-Identifier: GPL-2.0
2 /*
3  * Copyright (c) 2001-2005 Silicon Graphics, Inc.
4  * All Rights Reserved.
5  */
6 #ifndef __XFS_ACL_H__
7 #define __XFS_ACL_H__
8
9 struct inode;
10 struct posix_acl;
11
12 #ifdef CONFIG_XFS_POSIX_ACL
13 extern struct posix_acl *xfs_get_acl(struct inode *inode, int type, bool rcu);
14 extern int xfs_set_acl(struct user_namespace *mnt_userns, struct inode *inode,
15                        struct posix_acl *acl, int type);
16 extern int __xfs_set_acl(struct inode *inode, struct posix_acl *acl, int type);
17 void xfs_forget_acl(struct inode *inode, const char *name);
18 #else
19 #define xfs_get_acl NULL
20 #define xfs_set_acl NULL
21 static inline int __xfs_set_acl(struct inode *inode, struct posix_acl *acl,
22                                 int type)
23 {
24         return 0;
25 }
26 static inline void xfs_forget_acl(struct inode *inode, const char *name)
27 {
28 }
29 #endif /* CONFIG_XFS_POSIX_ACL */
30
31 #endif  /* __XFS_ACL_H__ */