xref: /linux/fs/ntfs/ea.h (revision 3a2c4d55e32ad65efebdb6de44eef3bfa08bb49d)
1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2 
3 #ifndef _LINUX_NTFS_EA_H
4 #define _LINUX_NTFS_EA_H
5 
6 #define NTFS_EA_UID	BIT(1)
7 #define NTFS_EA_GID	BIT(2)
8 #define NTFS_EA_MODE	BIT(3)
9 
10 extern const struct xattr_handler *const ntfs_xattr_handlers[];
11 
12 int ntfs_ea_set_wsl_not_symlink(struct ntfs_inode *ni, mode_t mode, dev_t dev);
13 int ntfs_ea_get_wsl_inode(struct inode *inode, dev_t *rdevp, unsigned int flags,
14 			  bool *has_lxmod);
15 int ntfs_ea_set_wsl_inode(struct inode *inode, dev_t rdev, __le16 *ea_size,
16 		unsigned int flags);
17 ssize_t ntfs_listxattr(struct dentry *dentry, char *buffer, size_t size);
18 
19 #ifdef CONFIG_NTFS_FS_POSIX_ACL
20 struct posix_acl *ntfs_get_acl(struct mnt_idmap *idmap, struct dentry *dentry,
21 			       int type);
22 int ntfs_set_acl(struct mnt_idmap *idmap, struct dentry *dentry,
23 		 struct posix_acl *acl, int type);
24 int ntfs_init_acl(struct mnt_idmap *idmap, struct inode *inode,
25 		  struct inode *dir);
26 #else
27 #define ntfs_get_acl NULL
28 #define ntfs_set_acl NULL
29 #endif
30 
31 #endif /* _LINUX_NTFS_EA_H */
32