aboutsummaryrefslogtreecommitdiffstats
path: root/fs/nfs/dir.c
diff options
context:
space:
mode:
authorBryan Schumaker <bjschuma@netapp.com>2011-03-24 13:12:24 -0400
committerTrond Myklebust <Trond.Myklebust@netapp.com>2011-03-24 13:52:41 -0400
commit7c5130588d691a3b34d02312f1bd1b6d56fe0100 (patch)
tree154ccea3a837ca1aae2c5676e0946b79fb4bb671 /fs/nfs/dir.c
parente73b83f270828630a9ce33728f6ef61c37a82340 (diff)
NFS: lookup supports alternate client
A later patch will need to perform a lookup using an alternate client with a different security flavor. This patch adds support for doing that on NFS v4. Signed-off-by: Bryan Schumaker <bjschuma@netapp.com> Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'fs/nfs/dir.c')
-rw-r--r--fs/nfs/dir.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/fs/nfs/dir.c b/fs/nfs/dir.c
index abdf38d5971d..a83cd0d9dfab 100644
--- a/fs/nfs/dir.c
+++ b/fs/nfs/dir.c
@@ -1068,7 +1068,7 @@ static int nfs_lookup_revalidate(struct dentry *dentry, struct nameidata *nd)
1068 if (fhandle == NULL || fattr == NULL) 1068 if (fhandle == NULL || fattr == NULL)
1069 goto out_error; 1069 goto out_error;
1070 1070
1071 error = NFS_PROTO(dir)->lookup(dir, &dentry->d_name, fhandle, fattr); 1071 error = NFS_PROTO(dir)->lookup(NFS_SERVER(dir)->client, dir, &dentry->d_name, fhandle, fattr);
1072 if (error) 1072 if (error)
1073 goto out_bad; 1073 goto out_bad;
1074 if (nfs_compare_fh(NFS_FH(inode), fhandle)) 1074 if (nfs_compare_fh(NFS_FH(inode), fhandle))
@@ -1224,7 +1224,7 @@ static struct dentry *nfs_lookup(struct inode *dir, struct dentry * dentry, stru
1224 parent = dentry->d_parent; 1224 parent = dentry->d_parent;
1225 /* Protect against concurrent sillydeletes */ 1225 /* Protect against concurrent sillydeletes */
1226 nfs_block_sillyrename(parent); 1226 nfs_block_sillyrename(parent);
1227 error = NFS_PROTO(dir)->lookup(dir, &dentry->d_name, fhandle, fattr); 1227 error = NFS_PROTO(dir)->lookup(NFS_SERVER(dir)->client, dir, &dentry->d_name, fhandle, fattr);
1228 if (error == -ENOENT) 1228 if (error == -ENOENT)
1229 goto no_entry; 1229 goto no_entry;
1230 if (error < 0) { 1230 if (error < 0) {
@@ -1562,7 +1562,7 @@ int nfs_instantiate(struct dentry *dentry, struct nfs_fh *fhandle,
1562 if (dentry->d_inode) 1562 if (dentry->d_inode)
1563 goto out; 1563 goto out;
1564 if (fhandle->size == 0) { 1564 if (fhandle->size == 0) {
1565 error = NFS_PROTO(dir)->lookup(dir, &dentry->d_name, fhandle, fattr); 1565 error = NFS_PROTO(dir)->lookup(NFS_SERVER(dir)->client, dir, &dentry->d_name, fhandle, fattr);
1566 if (error) 1566 if (error)
1567 goto out_error; 1567 goto out_error;
1568 } 1568 }