From: Jeffrey Altman Date: Tue, 9 Jun 2009 21:11:04 +0000 (+0000) Subject: windows-freelance-default-cell-20090609 X-Git-Tag: openafs-devel-1_5_61~233 X-Git-Url: https://git.michaelhowe.org/gitweb/?a=commitdiff_plain;h=37e1cd23195215cd5999be7fa5a8de6af7efebcb;p=packages%2Fo%2Fopenafs.git windows-freelance-default-cell-20090609 LICENSE MIT If a freelance mount point does not specify a cell name, default to the workstation cell. --- diff --git a/src/WINNT/afsd/cm_vnodeops.c b/src/WINNT/afsd/cm_vnodeops.c index 480396b90..fe15adbd7 100644 --- a/src/WINNT/afsd/cm_vnodeops.c +++ b/src/WINNT/afsd/cm_vnodeops.c @@ -936,7 +936,21 @@ long cm_FollowMountPoint(cm_scache_t *scp, cm_scache_t *dscp, cm_user_t *userp, /* normal mt pt */ volNamep = cm_FsStrDup(mpNamep + 1); - cellp = cm_FindCellByID(scp->fid.cell, 0); +#ifdef AFS_FREELANCE_CLIENT + /* + * Mount points in the Freelance cell should default + * to the workstation cell. + */ + if (cm_freelanceEnabled && + scp->fid.cell==AFS_FAKE_ROOT_CELL_ID && + scp->fid.volume==AFS_FAKE_ROOT_VOL_ID ) + { + fschar_t rootCellName[256]=""; + cm_GetRootCellName(rootCellName); + cellp = cm_GetCell(rootCellName, 0); + } else +#endif /* AFS_FREELANCE_CLIENT */ + cellp = cm_FindCellByID(scp->fid.cell, 0); } if (!cellp) {