From: Jeffrey Altman Date: Thu, 1 Feb 2007 04:28:37 +0000 (+0000) Subject: windows-freelance-20070131 X-Git-Tag: BP-openafs-windows-kdfs-ifs~836 X-Git-Url: https://git.michaelhowe.org/gitweb/?a=commitdiff_plain;h=bd5ed7d332df05ac232f4188a166ce6f791f7cca;p=packages%2Fo%2Fopenafs.git windows-freelance-20070131 FIXES 52069 If an app tries to open the freelance directory for WRITE then the default anonymous access privileges, read/lookup, are not sufficient and cm_HaveAccessRights will fail. Freelance can't get access rights from anywhere. Therefore, cm_HaveAccessRights should special case the Freelance directory. --- diff --git a/src/WINNT/afsd/cm_access.c b/src/WINNT/afsd/cm_access.c index 3b16c101e..ba747a808 100644 --- a/src/WINNT/afsd/cm_access.c +++ b/src/WINNT/afsd/cm_access.c @@ -76,6 +76,12 @@ int cm_HaveAccessRights(struct cm_scache *scp, struct cm_user *userp, afs_uint32 * Otherwise, if we an explicit acl entry, we're also in good shape, * and can definitively answer. */ +#ifdef AFS_FREELANCE_CLIENT + if (cm_freelanceEnabled && aclScp == cm_data.rootSCachep) + { + *outRightsp = aclScp->anyAccess; + } else +#endif if ((~aclScp->anyAccess & rights) == 0) { *outRightsp = rights; } else {