In nfs_link(), check for a cross-device mount *before* looking in the

v_data field.
This commit is contained in:
mycroft 1997-03-05 02:08:06 +00:00
parent 88bf00b5bf
commit bbb6842922
1 changed files with 3 additions and 3 deletions

View File

@ -1,4 +1,4 @@
/* $NetBSD: nfs_vnops.c,v 1.71 1997/02/22 03:08:47 fvdl Exp $ */
/* $NetBSD: nfs_vnops.c,v 1.72 1997/03/05 02:08:06 mycroft Exp $ */
/*
* Copyright (c) 1989, 1993
@ -1657,8 +1657,7 @@ nfs_link(v)
caddr_t bpos, dpos, cp2;
int error = 0, wccflag = NFSV3_WCCRATTR, attrflag = 0;
struct mbuf *mreq, *mrep, *md, *mb, *mb2;
int v3 = NFS_ISV3(vp);
int v3;
if (dvp->v_mount != vp->v_mount) {
VOP_ABORTOP(vp, cnp);
@ -1673,6 +1672,7 @@ nfs_link(v)
*/
VOP_FSYNC(vp, cnp->cn_cred, MNT_WAIT, cnp->cn_proc);
v3 = NFS_ISV3(vp);
nfsstats.rpccnt[NFSPROC_LINK]++;
nfsm_reqhead(vp, NFSPROC_LINK,
NFSX_FH(v3)*2 + NFSX_UNSIGNED + nfsm_rndup(cnp->cn_namelen));