From: Chaskiel M Grundman Date: Sun, 5 Feb 2006 18:26:48 +0000 (+0000) Subject: STABLE14-darwin-avoid-bogus-name-caching-20060205 X-Git-Tag: openafs-stable-1_4_1-rc7~25 X-Git-Url: https://git.michaelhowe.org/gitweb/?a=commitdiff_plain;h=98010e1f704c93184ce5afb24572aa23e42fdb00;p=packages%2Fo%2Fopenafs.git STABLE14-darwin-avoid-bogus-name-caching-20060205 FIXES 26225 avoid the possibility of creating bogus cached named vnodes (cherry picked from commit f504df317572835718037fe177073e3202905753) --- 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);