3 * COPYRIGHT: See COPYING in the top level directory
4 * PROJECT: ReactOS kernel
5 * FILE: lib/ntdll/csr/probe.c
6 * PURPOSE: CSRSS address range access probing API
10 #define NTOS_MODE_USER
14 #include <ntdll/rtl.h>
17 CsrProbeForRead(IN CONST PVOID Address,
27 if ((ULONG)Address & (Alignment - 1))
28 RtlRaiseStatus(STATUS_DATATYPE_MISALIGNMENT);
30 Pointer = (PUCHAR)Address;
32 Pointer = (PUCHAR)((ULONG)Address + Length -1);
37 CsrProbeForWrite(IN CONST PVOID Address,
47 if ((ULONG)Address & (Alignment - 1))
48 RtlRaiseStatus(STATUS_DATATYPE_MISALIGNMENT);
50 // if (Address >= MmUserProbeAddress)
51 // RtlRaiseStatus(STATUS_ACCESS_VIOLATION);
53 Pointer = (PUCHAR)Address;
56 Pointer = (PUCHAR)((ULONG)Address + Length -1);