162306a36Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */ 262306a36Sopenharmony_ci/* 362306a36Sopenharmony_ci * Copyright (C) 2014 Anna Schumaker. 462306a36Sopenharmony_ci * 562306a36Sopenharmony_ci * NFSv3-specific filesystem definitions and declarations 662306a36Sopenharmony_ci */ 762306a36Sopenharmony_ci#ifndef __LINUX_FS_NFS_NFS3_FS_H 862306a36Sopenharmony_ci#define __LINUX_FS_NFS_NFS3_FS_H 962306a36Sopenharmony_ci 1062306a36Sopenharmony_ci/* 1162306a36Sopenharmony_ci * nfs3acl.c 1262306a36Sopenharmony_ci */ 1362306a36Sopenharmony_ci#ifdef CONFIG_NFS_V3_ACL 1462306a36Sopenharmony_ciextern struct posix_acl *nfs3_get_acl(struct inode *inode, int type, bool rcu); 1562306a36Sopenharmony_ciextern int nfs3_set_acl(struct mnt_idmap *idmap, struct dentry *dentry, 1662306a36Sopenharmony_ci struct posix_acl *acl, int type); 1762306a36Sopenharmony_ciextern int nfs3_proc_setacls(struct inode *inode, struct posix_acl *acl, 1862306a36Sopenharmony_ci struct posix_acl *dfacl); 1962306a36Sopenharmony_ciextern ssize_t nfs3_listxattr(struct dentry *, char *, size_t); 2062306a36Sopenharmony_ci#else 2162306a36Sopenharmony_cistatic inline int nfs3_proc_setacls(struct inode *inode, struct posix_acl *acl, 2262306a36Sopenharmony_ci struct posix_acl *dfacl) 2362306a36Sopenharmony_ci{ 2462306a36Sopenharmony_ci return 0; 2562306a36Sopenharmony_ci} 2662306a36Sopenharmony_ci#define nfs3_listxattr NULL 2762306a36Sopenharmony_ci#endif /* CONFIG_NFS_V3_ACL */ 2862306a36Sopenharmony_ci 2962306a36Sopenharmony_ci/* nfs3client.c */ 3062306a36Sopenharmony_cistruct nfs_server *nfs3_create_server(struct fs_context *); 3162306a36Sopenharmony_cistruct nfs_server *nfs3_clone_server(struct nfs_server *, struct nfs_fh *, 3262306a36Sopenharmony_ci struct nfs_fattr *, rpc_authflavor_t); 3362306a36Sopenharmony_ci 3462306a36Sopenharmony_ci/* nfs3super.c */ 3562306a36Sopenharmony_ciextern struct nfs_subversion nfs_v3; 3662306a36Sopenharmony_ci 3762306a36Sopenharmony_ci#endif /* __LINUX_FS_NFS_NFS3_FS_H */ 38