1 | /* SPDX-License-Identifier: LGPL-2.1 */ |
2 | /* |
3 | * Copyright IBM Corporation, 2010 |
4 | * Author Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com> |
5 | */ |
6 | #ifndef FS_9P_ACL_H |
7 | #define FS_9P_ACL_H |
8 | |
9 | #ifdef CONFIG_9P_FS_POSIX_ACL |
10 | int v9fs_get_acl(struct inode *inode, struct p9_fid *fid); |
11 | struct posix_acl *v9fs_iop_get_inode_acl(struct inode *inode, int type, |
12 | bool rcu); |
13 | struct posix_acl *v9fs_iop_get_acl(struct mnt_idmap *idmap, |
14 | struct dentry *dentry, int type); |
15 | int v9fs_iop_set_acl(struct mnt_idmap *idmap, struct dentry *dentry, |
16 | struct posix_acl *acl, int type); |
17 | int v9fs_acl_chmod(struct inode *inode, struct p9_fid *fid); |
18 | int v9fs_set_create_acl(struct inode *inode, struct p9_fid *fid, |
19 | struct posix_acl *dacl, struct posix_acl *acl); |
20 | int v9fs_acl_mode(struct inode *dir, umode_t *modep, |
21 | struct posix_acl **dpacl, struct posix_acl **pacl); |
22 | void v9fs_put_acl(struct posix_acl *dacl, struct posix_acl *acl); |
23 | #else |
24 | #define v9fs_iop_get_inode_acl NULL |
25 | #define v9fs_iop_get_acl NULL |
26 | #define v9fs_iop_set_acl NULL |
27 | static inline int v9fs_get_acl(struct inode *inode, struct p9_fid *fid) |
28 | { |
29 | return 0; |
30 | } |
31 | static inline int v9fs_acl_chmod(struct inode *inode, struct p9_fid *fid) |
32 | { |
33 | return 0; |
34 | } |
35 | static inline int v9fs_set_create_acl(struct inode *inode, |
36 | struct p9_fid *fid, |
37 | struct posix_acl *dacl, |
38 | struct posix_acl *acl) |
39 | { |
40 | return 0; |
41 | } |
42 | static inline void v9fs_put_acl(struct posix_acl *dacl, |
43 | struct posix_acl *acl) |
44 | { |
45 | } |
46 | static inline int v9fs_acl_mode(struct inode *dir, umode_t *modep, |
47 | struct posix_acl **dpacl, |
48 | struct posix_acl **pacl) |
49 | { |
50 | return 0; |
51 | } |
52 | |
53 | #endif |
54 | #endif /* FS_9P_XATTR_H */ |
55 | |