diff options
-rw-r--r-- | sys/fs/msdosfs/msdosfs_vnops.c | 5 | ||||
-rw-r--r-- | sys/msdosfs/msdosfs_vnops.c | 5 | ||||
-rw-r--r-- | sys/ufs/ufs/ufs_vnops.c | 4 |
3 files changed, 8 insertions, 6 deletions
diff --git a/sys/fs/msdosfs/msdosfs_vnops.c b/sys/fs/msdosfs/msdosfs_vnops.c index 6689d1d..e3b4a5c 100644 --- a/sys/fs/msdosfs/msdosfs_vnops.c +++ b/sys/fs/msdosfs/msdosfs_vnops.c @@ -1,4 +1,4 @@ -/* $Id: msdosfs_vnops.c,v 1.22 1995/08/25 20:12:23 bde Exp $ */ +/* $Id: msdosfs_vnops.c,v 1.23 1995/09/04 00:20:45 dyson Exp $ */ /* $NetBSD: msdosfs_vnops.c,v 1.20 1994/08/21 18:44:13 ws Exp $ */ /*- @@ -1031,7 +1031,8 @@ msdosfs_rename(ap) if ((ap->a_fcnp->cn_namelen == 1 && ap->a_fcnp->cn_nameptr[0] == '.') || fddep == fdep - || (ap->a_fcnp->cn_flags & ISDOTDOT)) { + || (ap->a_fcnp->cn_flags | ap->a_tcnp->cn_flags) + & ISDOTDOT) { VOP_ABORTOP(ap->a_tdvp, ap->a_tcnp); vput(ap->a_tdvp); if (tvp) diff --git a/sys/msdosfs/msdosfs_vnops.c b/sys/msdosfs/msdosfs_vnops.c index 6689d1d..e3b4a5c 100644 --- a/sys/msdosfs/msdosfs_vnops.c +++ b/sys/msdosfs/msdosfs_vnops.c @@ -1,4 +1,4 @@ -/* $Id: msdosfs_vnops.c,v 1.22 1995/08/25 20:12:23 bde Exp $ */ +/* $Id: msdosfs_vnops.c,v 1.23 1995/09/04 00:20:45 dyson Exp $ */ /* $NetBSD: msdosfs_vnops.c,v 1.20 1994/08/21 18:44:13 ws Exp $ */ /*- @@ -1031,7 +1031,8 @@ msdosfs_rename(ap) if ((ap->a_fcnp->cn_namelen == 1 && ap->a_fcnp->cn_nameptr[0] == '.') || fddep == fdep - || (ap->a_fcnp->cn_flags & ISDOTDOT)) { + || (ap->a_fcnp->cn_flags | ap->a_tcnp->cn_flags) + & ISDOTDOT) { VOP_ABORTOP(ap->a_tdvp, ap->a_tcnp); vput(ap->a_tdvp); if (tvp) diff --git a/sys/ufs/ufs/ufs_vnops.c b/sys/ufs/ufs/ufs_vnops.c index d99c713..958fdd1 100644 --- a/sys/ufs/ufs/ufs_vnops.c +++ b/sys/ufs/ufs/ufs_vnops.c @@ -36,7 +36,7 @@ * SUCH DAMAGE. * * @(#)ufs_vnops.c 8.10 (Berkeley) 4/1/94 - * $Id: ufs_vnops.c,v 1.28 1995/09/04 00:21:11 dyson Exp $ + * $Id: ufs_vnops.c,v 1.29 1995/09/09 01:43:49 julian Exp $ */ #include <sys/param.h> @@ -840,7 +840,7 @@ abortit: * Avoid ".", "..", and aliases of "." for obvious reasons. */ if ((fcnp->cn_namelen == 1 && fcnp->cn_nameptr[0] == '.') || - dp == ip || (fcnp->cn_flags&ISDOTDOT) || + dp == ip || (fcnp->cn_flags | tcnp->cn_flags) & ISDOTDOT || (ip->i_flag & IN_RENAME)) { VOP_UNLOCK(fvp); error = EINVAL; |