summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorrmacklem <rmacklem@FreeBSD.org>2014-06-06 21:38:49 +0000
committerrmacklem <rmacklem@FreeBSD.org>2014-06-06 21:38:49 +0000
commit579917b4943fd0fd6058050ec288a72fb7fe3bb4 (patch)
treef78c30ffc9a86412aa385d77445ab2e1ef8cc490
parent9ac87082af9b17133c68fbe60f507d91fae553b5 (diff)
downloadFreeBSD-src-579917b4943fd0fd6058050ec288a72fb7fe3bb4.zip
FreeBSD-src-579917b4943fd0fd6058050ec288a72fb7fe3bb4.tar.gz
The new NFS server would not allow a hard link to be
created to a symlink. This restriction (which was inherited from OpenBSD) is not required by the NFS RFCs. Since this is allowed by the old NFS server, it is a POLA violation to not allow it. This patch modifies the new NFS server to allow this. Reported by: jhb Reviewed by: jhb MFC after: 3 days
-rw-r--r--sys/fs/nfsserver/nfs_nfsdserv.c7
1 files changed, 0 insertions, 7 deletions
diff --git a/sys/fs/nfsserver/nfs_nfsdserv.c b/sys/fs/nfsserver/nfs_nfsdserv.c
index bf2d7ed..69c3af0 100644
--- a/sys/fs/nfsserver/nfs_nfsdserv.c
+++ b/sys/fs/nfsserver/nfs_nfsdserv.c
@@ -1620,13 +1620,6 @@ nfsrvd_link(struct nfsrv_descript *nd, int isdgram,
nd->nd_repstat = NFSERR_INVAL;
if (tovp)
vrele(tovp);
- } else if (vnode_vtype(vp) == VLNK) {
- if (nd->nd_flag & ND_NFSV2)
- nd->nd_repstat = NFSERR_INVAL;
- else
- nd->nd_repstat = NFSERR_NOTSUPP;
- if (tovp)
- vrele(tovp);
}
if (!nd->nd_repstat) {
if (nd->nd_flag & ND_NFSV4) {
OpenPOWER on IntegriCloud