Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0 */
0002 /*
0003  * Copyright (C) 2014 Anna Schumaker.
0004  *
0005  * NFSv3-specific filesystem definitions and declarations
0006  */
0007 #ifndef __LINUX_FS_NFS_NFS3_FS_H
0008 #define __LINUX_FS_NFS_NFS3_FS_H
0009 
0010 /*
0011  * nfs3acl.c
0012  */
0013 #ifdef CONFIG_NFS_V3_ACL
0014 extern struct posix_acl *nfs3_get_acl(struct inode *inode, int type, bool rcu);
0015 extern int nfs3_set_acl(struct user_namespace *mnt_userns, struct inode *inode,
0016             struct posix_acl *acl, int type);
0017 extern int nfs3_proc_setacls(struct inode *inode, struct posix_acl *acl,
0018         struct posix_acl *dfacl);
0019 extern ssize_t nfs3_listxattr(struct dentry *, char *, size_t);
0020 extern const struct xattr_handler *nfs3_xattr_handlers[];
0021 #else
0022 static inline int nfs3_proc_setacls(struct inode *inode, struct posix_acl *acl,
0023         struct posix_acl *dfacl)
0024 {
0025     return 0;
0026 }
0027 #define nfs3_listxattr NULL
0028 #endif /* CONFIG_NFS_V3_ACL */
0029 
0030 /* nfs3client.c */
0031 struct nfs_server *nfs3_create_server(struct fs_context *);
0032 struct nfs_server *nfs3_clone_server(struct nfs_server *, struct nfs_fh *,
0033                      struct nfs_fattr *, rpc_authflavor_t);
0034 
0035 /* nfs3super.c */
0036 extern struct nfs_subversion nfs_v3;
0037 
0038 #endif /* __LINUX_FS_NFS_NFS3_FS_H */