diff options
author | rmacklem <rmacklem@FreeBSD.org> | 2014-06-06 21:38:49 +0000 |
---|---|---|
committer | rmacklem <rmacklem@FreeBSD.org> | 2014-06-06 21:38:49 +0000 |
commit | 579917b4943fd0fd6058050ec288a72fb7fe3bb4 (patch) | |
tree | f78c30ffc9a86412aa385d77445ab2e1ef8cc490 /sys | |
parent | 9ac87082af9b17133c68fbe60f507d91fae553b5 (diff) | |
download | FreeBSD-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
Diffstat (limited to 'sys')
-rw-r--r-- | sys/fs/nfsserver/nfs_nfsdserv.c | 7 |
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) { |