diff options
author | Andreas Gruenbacher <agruen@suse.de> | 2005-06-22 13:16:27 -0400 |
---|---|---|
committer | Trond Myklebust <Trond.Myklebust@netapp.com> | 2005-06-22 16:07:24 -0400 |
commit | b7fa0554cf1ba6d6895cd0a5b02989a26e0bc704 (patch) | |
tree | 83eb405f3ff78c17695999df38c99484e3aee01f /fs/nfs/dir.c | |
parent | a257cdd0e2179630d3201c32ba14d7fcb3c3a055 (diff) |
[PATCH] NFS: Add support for NFSv3 ACLs
This adds acl support fo nfs clients via the NFSACL protocol extension, by
implementing the getxattr, listxattr, setxattr, and removexattr iops for the
system.posix_acl_access and system.posix_acl_default attributes. This patch
implements a dumb version that uses no caching (and thus adds some overhead).
(Another patch in this patchset adds caching as well.)
Signed-off-by: Andreas Gruenbacher <agruen@suse.de>
Acked-by: Olaf Kirch <okir@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'fs/nfs/dir.c')
-rw-r--r-- | fs/nfs/dir.c | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/fs/nfs/dir.c b/fs/nfs/dir.c index 5720537bffdd..2c6a95945684 100644 --- a/fs/nfs/dir.c +++ b/fs/nfs/dir.c | |||
@@ -75,6 +75,27 @@ struct inode_operations nfs_dir_inode_operations = { | |||
75 | .setattr = nfs_setattr, | 75 | .setattr = nfs_setattr, |
76 | }; | 76 | }; |
77 | 77 | ||
78 | #ifdef CONFIG_NFS_V3 | ||
79 | struct inode_operations nfs3_dir_inode_operations = { | ||
80 | .create = nfs_create, | ||
81 | .lookup = nfs_lookup, | ||
82 | .link = nfs_link, | ||
83 | .unlink = nfs_unlink, | ||
84 | .symlink = nfs_symlink, | ||
85 | .mkdir = nfs_mkdir, | ||
86 | .rmdir = nfs_rmdir, | ||
87 | .mknod = nfs_mknod, | ||
88 | .rename = nfs_rename, | ||
89 | .permission = nfs_permission, | ||
90 | .getattr = nfs_getattr, | ||
91 | .setattr = nfs_setattr, | ||
92 | .listxattr = nfs3_listxattr, | ||
93 | .getxattr = nfs3_getxattr, | ||
94 | .setxattr = nfs3_setxattr, | ||
95 | .removexattr = nfs3_removexattr, | ||
96 | }; | ||
97 | #endif /* CONFIG_NFS_V3 */ | ||
98 | |||
78 | #ifdef CONFIG_NFS_V4 | 99 | #ifdef CONFIG_NFS_V4 |
79 | 100 | ||
80 | static struct dentry *nfs_atomic_lookup(struct inode *, struct dentry *, struct nameidata *); | 101 | static struct dentry *nfs_atomic_lookup(struct inode *, struct dentry *, struct nameidata *); |