From: Jeffrey Altman Date: Thu, 1 Feb 2007 04:30:21 +0000 (+0000) Subject: DEVEL15-windows-freelance-20070131 X-Git-Tag: openafs-devel-1_5_15~53 X-Git-Url: https://git.michaelhowe.org/gitweb/?a=commitdiff_plain;h=28078afa0e66e4126dd11073ba40f8ff3b86382b;p=packages%2Fo%2Fopenafs.git DEVEL15-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. (cherry picked from commit bd5ed7d332df05ac232f4188a166ce6f791f7cca) --- diff --git a/src/WINNT/afsd/cm_access.c b/src/WINNT/afsd/cm_access.c index 16501be01..75bc0865e 100644 --- a/src/WINNT/afsd/cm_access.c +++ b/src/WINNT/afsd/cm_access.c @@ -80,6 +80,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 {