nfs3_fs.h 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. /* SPDX-License-Identifier: GPL-2.0 */
  2. /*
  3. * Copyright (C) 2014 Anna Schumaker.
  4. *
  5. * NFSv3-specific filesystem definitions and declarations
  6. */
  7. #ifndef __LINUX_FS_NFS_NFS3_FS_H
  8. #define __LINUX_FS_NFS_NFS3_FS_H
  9. /*
  10. * nfs3acl.c
  11. */
  12. #ifdef CONFIG_NFS_V3_ACL
  13. extern struct posix_acl *nfs3_get_acl(struct inode *inode, int type);
  14. extern int nfs3_set_acl(struct inode *inode, struct posix_acl *acl, int type);
  15. extern int nfs3_proc_setacls(struct inode *inode, struct posix_acl *acl,
  16. struct posix_acl *dfacl);
  17. extern ssize_t nfs3_listxattr(struct dentry *, char *, size_t);
  18. extern const struct xattr_handler *nfs3_xattr_handlers[];
  19. #else
  20. static inline int nfs3_proc_setacls(struct inode *inode, struct posix_acl *acl,
  21. struct posix_acl *dfacl)
  22. {
  23. return 0;
  24. }
  25. #define nfs3_listxattr NULL
  26. #endif /* CONFIG_NFS_V3_ACL */
  27. /* nfs3client.c */
  28. struct nfs_server *nfs3_create_server(struct nfs_mount_info *, struct nfs_subversion *);
  29. struct nfs_server *nfs3_clone_server(struct nfs_server *, struct nfs_fh *,
  30. struct nfs_fattr *, rpc_authflavor_t);
  31. /* nfs3super.c */
  32. extern struct nfs_subversion nfs_v3;
  33. #endif /* __LINUX_FS_NFS_NFS3_FS_H */