3 * COPYRIGHT: See COPYING in the top level directory
4 * PROJECT: ReactOS kernel
5 * PURPOSE: Access rights handling functions
6 * FILE: lib/ntdll/rtl/access.c
7 * PROGRAMER: Eric Kohl <ekohl@rz-online.de>
12 /* INCLUDES *****************************************************************/
14 #include <ddk/ntddk.h>
16 #include <ntdll/ntdll.h>
18 /* FUNCTIONS ***************************************************************/
22 RtlAreAllAccessesGranted (
23 ACCESS_MASK GrantedAccess,
24 ACCESS_MASK DesiredAccess
27 return ((GrantedAccess & DesiredAccess) == DesiredAccess);
36 RtlAreAnyAccessesGranted (
37 ACCESS_MASK GrantedAccess,
38 ACCESS_MASK DesiredAccess
41 return ((GrantedAccess & DesiredAccess) != 0);
51 PACCESS_MASK AccessMask,
52 PGENERIC_MAPPING GenericMapping
55 if (*AccessMask & GENERIC_READ)
56 *AccessMask |= GenericMapping->GenericRead;
58 if (*AccessMask & GENERIC_WRITE)
59 *AccessMask |= GenericMapping->GenericWrite;
61 if (*AccessMask & GENERIC_EXECUTE)
62 *AccessMask |= GenericMapping->GenericExecute;
64 if (*AccessMask & GENERIC_ALL)
65 *AccessMask |= GenericMapping->GenericAll;
67 *AccessMask &= 0x0FFFFFFF;