|
@@ -888,6 +888,35 @@ static int nfs3_return_delegation(struct inode *inode)
|
|
|
return 0;
|
|
|
}
|
|
|
|
|
|
+static const struct inode_operations nfs3_dir_inode_operations = {
|
|
|
+ .create = nfs_create,
|
|
|
+ .lookup = nfs_lookup,
|
|
|
+ .link = nfs_link,
|
|
|
+ .unlink = nfs_unlink,
|
|
|
+ .symlink = nfs_symlink,
|
|
|
+ .mkdir = nfs_mkdir,
|
|
|
+ .rmdir = nfs_rmdir,
|
|
|
+ .mknod = nfs_mknod,
|
|
|
+ .rename = nfs_rename,
|
|
|
+ .permission = nfs_permission,
|
|
|
+ .getattr = nfs_getattr,
|
|
|
+ .setattr = nfs_setattr,
|
|
|
+ .listxattr = nfs3_listxattr,
|
|
|
+ .getxattr = nfs3_getxattr,
|
|
|
+ .setxattr = nfs3_setxattr,
|
|
|
+ .removexattr = nfs3_removexattr,
|
|
|
+};
|
|
|
+
|
|
|
+static const struct inode_operations nfs3_file_inode_operations = {
|
|
|
+ .permission = nfs_permission,
|
|
|
+ .getattr = nfs_getattr,
|
|
|
+ .setattr = nfs_setattr,
|
|
|
+ .listxattr = nfs3_listxattr,
|
|
|
+ .getxattr = nfs3_getxattr,
|
|
|
+ .setxattr = nfs3_setxattr,
|
|
|
+ .removexattr = nfs3_removexattr,
|
|
|
+};
|
|
|
+
|
|
|
const struct nfs_rpc_ops nfs_v3_clientops = {
|
|
|
.version = 3, /* protocol version */
|
|
|
.dentry_ops = &nfs_dentry_operations,
|