summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorrmacklem <rmacklem@FreeBSD.org>2011-06-20 21:57:26 +0000
committerrmacklem <rmacklem@FreeBSD.org>2011-06-20 21:57:26 +0000
commit609c641346bacf1e52d39d2bba117b275779c35f (patch)
tree4424f6eb0d9ff5845727e8f7faf9b4985a3ef1f3
parent4c37601f59a15c3cc664349bb10e6c1039441cab (diff)
downloadFreeBSD-src-609c641346bacf1e52d39d2bba117b275779c35f.zip
FreeBSD-src-609c641346bacf1e52d39d2bba117b275779c35f.tar.gz
Fix the new NFSv4 server so that it allows Access and Readlink
operations while traversing non-exported file systems. This is required for some non-FreeBSD clients to do NFSv4 mounts. Found during the recent NFSv4 interoperability Bakeathon. MFC after: 2 weeks
-rw-r--r--sys/fs/nfsserver/nfs_nfsdsocket.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/fs/nfsserver/nfs_nfsdsocket.c b/sys/fs/nfsserver/nfs_nfsdsocket.c
index 7007275..33be284 100644
--- a/sys/fs/nfsserver/nfs_nfsdsocket.c
+++ b/sys/fs/nfsserver/nfs_nfsdsocket.c
@@ -786,6 +786,8 @@ nfsrvd_compound(struct nfsrv_descript *nd, int isdgram,
op != NFSV4OP_LOOKUP &&
op != NFSV4OP_GETATTR &&
op != NFSV4OP_GETFH &&
+ op != NFSV4OP_ACCESS &&
+ op != NFSV4OP_READLINK &&
op != NFSV4OP_SECINFO)
nd->nd_repstat = NFSERR_NOFILEHANDLE;
else if (nfsvno_testexp(nd, &vpnes) &&
OpenPOWER on IntegriCloud