From f504df317572835718037fe177073e3202905753 Mon Sep 17 00:00:00 2001 From: Chaskiel M Grundman Date: Sun, 5 Feb 2006 18:21:51 +0000 Subject: [PATCH] darwin-avoid-bogus-name-caching-20060205 FIXES 26225 avoid the possibility of creating bogus cached named vnodes --- src/afs/DARWIN/osi_vnodeops.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/afs/DARWIN/osi_vnodeops.c b/src/afs/DARWIN/osi_vnodeops.c index 3f248179a..d7c5d1d0c 100644 --- a/src/afs/DARWIN/osi_vnodeops.c +++ b/src/afs/DARWIN/osi_vnodeops.c @@ -2038,7 +2038,10 @@ afs_darwin_finalizevnode(struct vcache *avc, struct vnode *dvp, struct component par.vnfs_filesize = avc->m.Length; par.vnfs_fsnode = avc; par.vnfs_dvp = dvp; - par.vnfs_cnp = cnp; + if (cnp && (cnp->cn_flags & ISDOTDOT) == 0) + par.vnfs_cnp = cnp; + if (!dvp || !cnp || (cnp->cn_flags & MAKEENTRY) == 0) + par.vnfs_flags = VNFS_NOCACHE; if (isroot) par.vnfs_markroot = 1; error = vnode_create(VNCREATE_FLAVOR, VCREATESIZE, &par, &nvp); -- 2.39.5