Lines Matching defs:access
593 /* support for the "bulk-access" fcntl */
609 short flags; /* IN: access requested (i.e. R_OK) */
614 short *access; /* OUT: access info for each file (0 for 'has access') */
619 short flags; /* IN: access requested (i.e. R_OK) */
624 user_addr_t access; /* OUT: access info for each file (0 for 'has access') */
632 uint32_t flags; /* IN: access requested (i.e. R_OK) */
637 short *access; /* OUT: access info for each file (0 for 'has access') */
643 uint32_t flags; /* IN: access requested (i.e. R_OK) */
648 user_addr_t access; /* OUT: access info for each file (0 for 'has access') */
738 add_node(struct access_cache *cache, int index, cnid_t nodeID, int access)
745 if (cache->haveaccess[lookup_index] != access && cache->haveaccess[lookup_index] == ESRCH) {
746 // only update an entry if the previous access was ESRCH (i.e. a scope checking error)
747 cache->haveaccess[lookup_index] = access;
780 cache->haveaccess[index] = access;
852 * Compute whether we have access to the given directory (nodeID) and all its parents. Cache
877 myResult = 0; /* default to "no access" */
881 /* ASSUMPTION: access info of cached entries is "final"... i.e. no need
924 goto ExitThisRoutine; /* no access */
927 /* Root always gets access. */
975 goto ExitThisRoutine; /* no access */
983 /* if here, we have access to this node */
1036 short *access=NULL;
1077 // convert an old style bulk-access struct to the new style
1083 tmp_user_access.access = CAST_USER_ADDR_T(accessp->access);
1098 tmp_user_access.access = CAST_USER_ADDR_T(accessp->access);
1127 access = (short *) kalloc(sizeof(short) * num_files);
1139 if (file_ids == NULL || access == NULL || (map_size != 0 && bitmap == NULL) || cache.acache == NULL || cache.haveaccess == NULL) {
1146 if (access) {
1147 kfree(access, sizeof(short) * num_files);
1188 /* Check access to each file_id passed in */
1193 /* root always has access */
1195 access[i] = 0;
1203 access[i] = (short) error;
1219 access[i] = myErr;
1233 access[i] = myErr;
1237 /* before calling CheckAccess(), check the target file for read access */
1241 /* fail fast if no access */
1243 access[i] = EACCES;
1252 /* if the last guy had the same parent and had access, we're done */
1253 if (i > 0 && catkey.hfsPlus.parentID == prevParent_cnid && access[i-1] == 0) {
1255 access[i] = 0;
1263 access[i] = 0; // have access.. no errors to report
1265 access[i] = (error != 0 ? (short) error : EACCES);
1271 /* copyout the access array */
1272 if ((error = copyout((caddr_t)access, user_access_structp->access,
1294 if (access)
1295 kfree(access, sizeof(short) * num_files);
1305 /* end "bulk-access" support */