ReactOS  r75400
mmfuncs.h File Reference
#include <umtypes.h>
#include <mmtypes.h>
Include dependency graph for mmfuncs.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

NTSTATUS NTAPI MmCreateSection (_Out_ PVOID *SectionObject, _In_ ACCESS_MASK DesiredAccess, _In_opt_ POBJECT_ATTRIBUTES ObjectAttributes, _In_ PLARGE_INTEGER MaximumSize, _In_ ULONG SectionPageProtection, _In_ ULONG AllocationAttributes, _In_opt_ HANDLE FileHandle, _In_opt_ PFILE_OBJECT File)
 
NTSTATUS NTAPI MmMapViewOfSection (_In_ PVOID SectionObject, _In_ PEPROCESS Process, _Inout_ PVOID *BaseAddress, _In_ ULONG_PTR ZeroBits, _In_ SIZE_T CommitSize, _Inout_opt_ PLARGE_INTEGER SectionOffset, _Inout_ PSIZE_T ViewSize, _In_ SECTION_INHERIT InheritDisposition, _In_ ULONG AllocationType, _In_ ULONG Protect)
 
NTSTATUS NTAPI MmUnmapViewOfSection (_In_ struct _EPROCESS *Process, _In_ PVOID BaseAddress)
 
NTSYSCALLAPI NTSTATUS NTAPI NtAreMappedFilesTheSame (_In_ PVOID File1MappedAsAnImage, _In_ PVOID File2MappedAsFile)
 
NTSTATUS NTAPI NtAllocateUserPhysicalPages (_In_ HANDLE ProcessHandle, _Inout_ PULONG_PTR NumberOfPages, _Inout_ PULONG_PTR UserPfnArray)
 
_Must_inspect_result_ _At_BaseAddress (Mem)) __kernel_entryNTSYSCALLAPINTSTATUSNTAPINtAllocateVirtualMemory(_In_ HANDLE ProcessHandle, _Inout_ _Outptr_result_buffer_(*RegionSize) PVOID *BaseAddress, _In_ ULONG_PTR ZeroBits, _Inout_ PSIZE_T RegionSize, _In_ ULONG AllocationType, _In_ ULONG Protect
 
NTSYSCALLAPI NTSTATUS NTAPI NtCreatePagingFile (_In_ PUNICODE_STRING FileName, _In_ PLARGE_INTEGER InitialSize, _In_ PLARGE_INTEGER MaxiumSize, _In_ ULONG Reserved)
 
_Must_inspect_result_
__kernel_entry NTSYSCALLAPI
NTSTATUS NTAPI 
NtCreateSection (_Out_ PHANDLE SectionHandle, _In_ ACCESS_MASK DesiredAccess, _In_opt_ POBJECT_ATTRIBUTES ObjectAttributes, _In_opt_ PLARGE_INTEGER MaximumSize, _In_ ULONG SectionPageProtection, _In_ ULONG AllocationAttributes, _In_opt_ HANDLE FileHandle)
 
NTSYSCALLAPI NTSTATUS NTAPI NtExtendSection (_In_ HANDLE SectionHandle, _In_ PLARGE_INTEGER NewMaximumSize)
 
NTSYSCALLAPI NTSTATUS NTAPI NtFlushInstructionCache (_In_ HANDLE ProcessHandle, _In_ PVOID BaseAddress, _In_ SIZE_T NumberOfBytesToFlush)
 
NTSYSCALLAPI NTSTATUS NTAPI NtFlushVirtualMemory (_In_ HANDLE ProcessHandle, _Inout_ PVOID *BaseAddress, _Inout_ PSIZE_T RegionSize, _Out_ PIO_STATUS_BLOCK IoStatus)
 
NTSTATUS NTAPI NtFreeUserPhysicalPages (_In_ HANDLE ProcessHandle, _Inout_ PULONG_PTR NumberOfPages, _Inout_ PULONG_PTR UserPfnArray)
 
__kernel_entry _IRQL_requires_max_ (PASSIVE_LEVEL) NTSYSCALLAPI NTSTATUS NTAPI NtFreeVirtualMemory(_In_ HANDLE ProcessHandle
 
__kernel_entry _Inout_ __drv_freesMem (Mem) PVOID *BaseAddress
 
NTSTATUS NTAPI NtGetWriteWatch (_In_ HANDLE ProcessHandle, _In_ ULONG Flags, _In_ PVOID BaseAddress, _In_ SIZE_T RegionSize, _In_ PVOID *UserAddressArray, _Out_ PULONG_PTR EntriesInUserAddressArray, _Out_ PULONG Granularity)
 
NTSYSCALLAPI NTSTATUS NTAPI NtLockVirtualMemory (_In_ HANDLE ProcessHandle, _Inout_ PVOID *BaseAddress, _Inout_ PSIZE_T NumberOfBytesToLock, _In_ ULONG MapType)
 
NTSTATUS NTAPI NtMapUserPhysicalPages (_In_ PVOID VirtualAddresses, _In_ ULONG_PTR NumberOfPages, _Inout_ PULONG_PTR UserPfnArray)
 
NTSTATUS NTAPI NtMapUserPhysicalPagesScatter (_In_ PVOID *VirtualAddresses, _In_ ULONG_PTR NumberOfPages, _Inout_ PULONG_PTR UserPfnArray)
 
NTSYSCALLAPI NTSTATUS NTAPI NtMapViewOfSection (_In_ HANDLE SectionHandle, _In_ HANDLE ProcessHandle, _Inout_ PVOID *BaseAddress, _In_ ULONG_PTR ZeroBits, _In_ SIZE_T CommitSize, _Inout_opt_ PLARGE_INTEGER SectionOffset, _Inout_ PSIZE_T ViewSize, _In_ SECTION_INHERIT InheritDisposition, _In_ ULONG AllocationType, _In_ ULONG AccessProtection)
 
NTSYSCALLAPI NTSTATUS NTAPI NtOpenSection (_Out_ PHANDLE SectionHandle, _In_ ACCESS_MASK DesiredAccess, _In_ POBJECT_ATTRIBUTES ObjectAttributes)
 
NTSYSCALLAPI NTSTATUS NTAPI NtProtectVirtualMemory (_In_ HANDLE ProcessHandle, _In_ PVOID *BaseAddress, _In_ SIZE_T *NumberOfBytesToProtect, _In_ ULONG NewAccessProtection, _Out_ PULONG OldAccessProtection)
 
NTSYSCALLAPI NTSTATUS NTAPI NtQuerySection (_In_ HANDLE SectionHandle, _In_ SECTION_INFORMATION_CLASS SectionInformationClass, _Out_ PVOID SectionInformation, _In_ SIZE_T Length, _Out_ PSIZE_T ResultLength)
 
NTSYSCALLAPI NTSTATUS NTAPI NtQueryVirtualMemory (_In_ HANDLE ProcessHandle, _In_ PVOID Address, _In_ MEMORY_INFORMATION_CLASS VirtualMemoryInformationClass, _Out_ PVOID VirtualMemoryInformation, _In_ SIZE_T Length, _Out_opt_ PSIZE_T ResultLength)
 
NTSYSCALLAPI NTSTATUS NTAPI NtReadVirtualMemory (_In_ HANDLE ProcessHandle, _In_ PVOID BaseAddress, _Out_ PVOID Buffer, _In_ SIZE_T NumberOfBytesToRead, _Out_opt_ PSIZE_T NumberOfBytesRead)
 
NTSTATUS NTAPI NtResetWriteWatch (_In_ HANDLE ProcessHandle, _In_ PVOID BaseAddress, _In_ SIZE_T RegionSize)
 
NTSYSCALLAPI NTSTATUS NTAPI NtUnlockVirtualMemory (_In_ HANDLE ProcessHandle, _Inout_ PVOID *BaseAddress, _Inout_ PSIZE_T NumberOfBytesToUnlock, _In_ ULONG MapType)
 
NTSYSCALLAPI NTSTATUS NTAPI NtUnmapViewOfSection (_In_ HANDLE ProcessHandle, _In_ PVOID BaseAddress)
 
NTSYSCALLAPI NTSTATUS NTAPI NtWriteVirtualMemory (_In_ HANDLE ProcessHandle, _In_ PVOID BaseAddress, _In_ PVOID Buffer, _In_ SIZE_T NumberOfBytesToWrite, _Out_opt_ PSIZE_T NumberOfBytesWritten)
 
NTSYSAPI NTSTATUS NTAPI ZwAreMappedFilesTheSame (_In_ PVOID File1MappedAsAnImage, _In_ PVOID File2MappedAsFile)
 
NTSYSAPI NTSTATUS NTAPI ZwCreatePagingFile (_In_ PUNICODE_STRING FileName, _In_ PLARGE_INTEGER InitialSize, _In_ PLARGE_INTEGER MaxiumSize, _In_ ULONG Reserved)
 
 _IRQL_requires_max_ (APC_LEVEL) NTSYSAPI NTSTATUS NTAPI ZwCreateSection(_Out_ PHANDLE SectionHandle
 
NTSYSAPI NTSTATUS NTAPI ZwExtendSection (_In_ HANDLE SectionHandle, _In_ PLARGE_INTEGER NewMaximumSize)
 
NTSYSAPI NTSTATUS NTAPI ZwLockVirtualMemory (_In_ HANDLE ProcessHandle, _Inout_ PVOID *BaseAddress, _Inout_ PSIZE_T NumberOfBytesToLock, _In_ ULONG MapType)
 
NTSYSAPI NTSTATUS NTAPI ZwOpenSection (_Out_ PHANDLE SectionHandle, _In_ ACCESS_MASK DesiredAccess, _In_ POBJECT_ATTRIBUTES ObjectAttributes)
 
NTSYSAPI NTSTATUS NTAPI ZwProtectVirtualMemory (_In_ HANDLE ProcessHandle, _In_ PVOID *BaseAddress, _In_ SIZE_T *NumberOfBytesToProtect, _In_ ULONG NewAccessProtection, _Out_ PULONG OldAccessProtection)
 
NTSYSAPI NTSTATUS NTAPI ZwQuerySection (_In_ HANDLE SectionHandle, _In_ SECTION_INFORMATION_CLASS SectionInformationClass, _Out_ PVOID SectionInformation, _In_ SIZE_T Length, _Out_opt_ PSIZE_T ResultLength)
 
NTSYSAPI NTSTATUS NTAPI ZwQueryVirtualMemory (_In_ HANDLE ProcessHandle, _In_ PVOID Address, _In_ MEMORY_INFORMATION_CLASS VirtualMemoryInformationClass, _Out_ PVOID VirtualMemoryInformation, _In_ SIZE_T Length, _Out_opt_ PSIZE_T ResultLength)
 
NTSYSAPI NTSTATUS NTAPI ZwReadVirtualMemory (_In_ HANDLE ProcessHandle, _In_ PVOID BaseAddress, _Out_ PVOID Buffer, _In_ SIZE_T NumberOfBytesToRead, _Out_opt_ PSIZE_T NumberOfBytesRead)
 
NTSYSAPI NTSTATUS NTAPI ZwUnlockVirtualMemory (_In_ HANDLE ProcessHandle, _Inout_ PVOID *BaseAddress, _Inout_ PSIZE_T NumberOfBytesToUnlock, _In_ ULONG MapType)
 
NTSYSAPI NTSTATUS NTAPI ZwWriteVirtualMemory (_In_ HANDLE ProcessHandle, _In_ PVOID BaseAddress, _In_ PVOID Buffer, _In_ SIZE_T NumberOfBytesToWrite, _Out_opt_ PSIZE_T NumberOfBytesWritten)
 

Variables

__kernel_entry _Inout_ _Inout_
PSIZE_T 
RegionSize
 
__kernel_entry _Inout_ _Inout_
PSIZE_T _In_ ULONG 
FreeType
 
_In_ ACCESS_MASK DesiredAccess
 
_In_ ACCESS_MASK _In_opt_
POBJECT_ATTRIBUTES 
ObjectAttributes
 
_In_ ACCESS_MASK _In_opt_
POBJECT_ATTRIBUTES _In_opt_
PLARGE_INTEGER 
MaximumSize
 
_In_ ACCESS_MASK _In_opt_
POBJECT_ATTRIBUTES _In_opt_
PLARGE_INTEGER _In_ ULONG 
SectionPageProtection
 
_In_ ACCESS_MASK _In_opt_
POBJECT_ATTRIBUTES _In_opt_
PLARGE_INTEGER _In_ ULONG _In_
ULONG 
AllocationAttributes
 
_In_ ACCESS_MASK _In_opt_
POBJECT_ATTRIBUTES _In_opt_
PLARGE_INTEGER _In_ ULONG _In_
ULONG _In_opt_ HANDLE 
FileHandle
 
_In_ HANDLE ProcessHandle
 
_In_ HANDLE
_Outptr_result_bytebuffer_
ViewSize PVOID
BaseAddress
 
_In_ HANDLE
_Outptr_result_bytebuffer_
ViewSize PVOID _In_ ULONG_PTR 
ZeroBits
 
_In_ HANDLE
_Outptr_result_bytebuffer_
ViewSize PVOID _In_ ULONG_PTR
_In_ SIZE_T 
CommitSize
 
_In_ HANDLE
_Outptr_result_bytebuffer_
ViewSize PVOID _In_ ULONG_PTR
_In_ SIZE_T _Inout_opt_
PLARGE_INTEGER 
SectionOffset
 
_In_ HANDLE
_Outptr_result_bytebuffer_
ViewSize PVOID _In_ ULONG_PTR
_In_ SIZE_T _Inout_opt_
PLARGE_INTEGER _Inout_ PSIZE_T 
ViewSize
 
_In_ HANDLE
_Outptr_result_bytebuffer_
ViewSize PVOID _In_ ULONG_PTR
_In_ SIZE_T _Inout_opt_
PLARGE_INTEGER _Inout_ PSIZE_T
_In_ SECTION_INHERIT 
InheritDisposition
 
_In_ HANDLE
_Outptr_result_bytebuffer_
ViewSize PVOID _In_ ULONG_PTR
_In_ SIZE_T _Inout_opt_
PLARGE_INTEGER _Inout_ PSIZE_T
_In_ SECTION_INHERIT _In_
ULONG 
AllocationType
 
_In_ HANDLE
_Outptr_result_bytebuffer_
ViewSize PVOID _In_ ULONG_PTR
_In_ SIZE_T _Inout_opt_
PLARGE_INTEGER _Inout_ PSIZE_T
_In_ SECTION_INHERIT _In_
ULONG _In_ ULONG 
Win32Protect
 

Function Documentation

_IRQL_requires_same_ _In_ __drv_freesMem ( Mem  )
__kernel_entry _IRQL_requires_max_ ( PASSIVE_LEVEL  )

Definition at line 37 of file Messaging.c.

48 {
49  PFLT_SERVER_PORT_OBJECT PortObject;
51 
52  /* The caller must allow at least one connection */
53  if (MaxConnections == 0)
54  {
56  }
57 
58  /* The request must be for a kernel handle */
59  if (!(ObjectAttributes->Attributes & OBJ_KERNEL_HANDLE))
60  {
62  }
63 
64  /*
65  * Get rundown protection on the target to stop the owner
66  * from unloading whilst this port object is open. It gets
67  * removed in the FltpServerPortClose callback
68  */
69  Status = FltObjectReference(Filter);
70  if (!NT_SUCCESS(Status))
71  {
72  return Status;
73  }
74 
75  /* Create our new server port object */
76  Status = ObCreateObject(0,
79  KernelMode,
80  NULL,
81  sizeof(FLT_SERVER_PORT_OBJECT),
82  0,
83  0,
84  (PVOID *)&PortObject);
85  if (NT_SUCCESS(Status))
86  {
87  /* Zero out the struct */
88  RtlZeroMemory(PortObject, sizeof(FLT_SERVER_PORT_OBJECT));
89 
90  /* Increment the ref count on the target filter */
92 
93  /* Setup the filter port object */
94  PortObject->Filter = Filter;
98  PortObject->Cookie = ServerPortCookie;
99  PortObject->MaxConnections = MaxConnections;
100 
101  /* Insert the object */
102  Status = ObInsertObject(PortObject,
103  NULL,
105  0,
106  NULL,
108  if (NT_SUCCESS(Status))
109  {
110  /* Lock the connection list */
112 
113  /* Add the new port object to the connection list and increment the count */
116 
117  /* Unlock the connection list*/
119  }
120  }
121 
122  if (!NT_SUCCESS(Status))
123  {
124  /* Allow the filter to be cleaned up */
126  }
127 
128  return STATUS_NOT_IMPLEMENTED;
129 }
DWORD *typedef PVOID
Definition: winlogon.h:52
IN PUNICODE_STRING IN POBJECT_ATTRIBUTES ObjectAttributes
Definition: conport.c:35
#define STATUS_NOT_IMPLEMENTED
Definition: ntstatus.h:225
#define STATUS_INVALID_PARAMETER
Definition: udferr_usr.h:135
_Must_inspect_result_ _Outptr_ PFLT_PORT * ServerPort
Definition: fltkernel.h:1873
PFLT_CONNECT_NOTIFY ConnectNotify
Definition: fltmgrint.h:177
VOID FLTAPI FltObjectDereference(_Inout_ PVOID Object)
Definition: Object.c:53
#define InsertTailList(ListHead, Entry)
VOID FASTCALL ExReleaseFastMutex(IN PFAST_MUTEX FastMutex)
Definition: fmutex.c:31
ULONG FltpObjectPointerReference(_In_ PFLT_OBJECT Object)
Definition: Object.c:252
LIST_ENTRY mList
Definition: fltmgrint.h:56
_Must_inspect_result_ _In_opt_ PFLT_FILTER Filter
Definition: fltkernel.h:1802
#define FILE_READ_DATA
Definition: nt_native.h:628
smooth NULL
Definition: ftsmooth.c:513
NTSTATUS NTAPI ObCreateObject(IN KPROCESSOR_MODE ProbeMode OPTIONAL, IN POBJECT_TYPE Type, IN POBJECT_ATTRIBUTES ObjectAttributes OPTIONAL, IN KPROCESSOR_MODE AccessMode, IN OUT PVOID ParseContext OPTIONAL, IN ULONG ObjectSize, IN ULONG PagedPoolCharge OPTIONAL, IN ULONG NonPagedPoolCharge OPTIONAL, OUT PVOID *Object)
Definition: oblife.c:938
POBJECT_TYPE ServerPortObjectType
Definition: Messaging.c:23
_Must_inspect_result_ _Outptr_ PFLT_PORT _In_ POBJECT_ATTRIBUTES _In_opt_ PVOID _In_ PFLT_CONNECT_NOTIFY _In_ PFLT_DISCONNECT_NOTIFY DisconnectNotifyCallback
Definition: fltkernel.h:1873
PVOID *typedef PHANDLE
Definition: ntsecpkg.h:411
_Must_inspect_result_ _Outptr_ PFLT_PORT _In_ POBJECT_ATTRIBUTES _In_opt_ PVOID _In_ PFLT_CONNECT_NOTIFY ConnectNotifyCallback
Definition: fltkernel.h:1873
Status
Definition: gdiplustypes.h:24
#define NT_SUCCESS(StatCode)
Definition: cmd.c:149
NTSTATUS NTAPI ObInsertObject(IN PVOID Object, IN PACCESS_STATE AccessState OPTIONAL, IN ACCESS_MASK DesiredAccess, IN ULONG ObjectPointerBias, OUT PVOID *NewObject OPTIONAL, OUT PHANDLE Handle)
Definition: obhandle.c:2925
LONG NTSTATUS
Definition: DriverTester.h:11
#define STANDARD_RIGHTS_ALL
Definition: nt_native.h:69
VOID FASTCALL ExAcquireFastMutex(IN PFAST_MUTEX FastMutex)
Definition: fmutex.c:23
NTSTATUS FLTAPI FltObjectReference(_Inout_ PVOID Object)
Definition: Object.c:41
_Must_inspect_result_ _Outptr_ PFLT_PORT _In_ POBJECT_ATTRIBUTES _In_opt_ PVOID ServerPortCookie
Definition: fltkernel.h:1873
FAST_MUTEX mLock
Definition: fltmgrint.h:55
PFLT_MESSAGE_NOTIFY MessageNotify
Definition: fltmgrint.h:179
#define RtlZeroMemory(Destination, Length)
Definition: typedefs.h:262
_Must_inspect_result_ _Outptr_ PFLT_PORT _In_ POBJECT_ATTRIBUTES _In_opt_ PVOID _In_ PFLT_CONNECT_NOTIFY _In_ PFLT_DISCONNECT_NOTIFY _In_opt_ PFLT_MESSAGE_NOTIFY _In_ LONG MaxConnections
Definition: fltkernel.h:1873
PFLT_DISCONNECT_NOTIFY DisconnectNotify
Definition: fltmgrint.h:178
#define OBJ_KERNEL_HANDLE
Definition: winternl.h:231
_Must_inspect_result_ _Outptr_ PFLT_PORT _In_ POBJECT_ATTRIBUTES _In_opt_ PVOID _In_ PFLT_CONNECT_NOTIFY _In_ PFLT_DISCONNECT_NOTIFY _In_opt_ PFLT_MESSAGE_NOTIFY MessageNotifyCallback
Definition: fltkernel.h:1873
FLT_MUTEX_LIST_HEAD ConnectionList
Definition: fltmgrint.h:86
_IRQL_requires_max_ ( APC_LEVEL  )
_Must_inspect_result_ _At_* BaseAddress ( Mem  )
NTSTATUS NTAPI MmCreateSection ( _Out_ PVOID SectionObject,
_In_ ACCESS_MASK  DesiredAccess,
_In_opt_ POBJECT_ATTRIBUTES  ObjectAttributes,
_In_ PLARGE_INTEGER  MaximumSize,
_In_ ULONG  SectionPageProtection,
_In_ ULONG  AllocationAttributes,
_In_opt_ HANDLE  FileHandle,
_In_opt_ PFILE_OBJECT  File 
)
NTSTATUS NTAPI MmMapViewOfSection ( _In_ PVOID  SectionObject,
_In_ PEPROCESS  Process,
_Inout_ PVOID BaseAddress,
_In_ ULONG_PTR  ZeroBits,
_In_ SIZE_T  CommitSize,
_Inout_opt_ PLARGE_INTEGER  SectionOffset,
_Inout_ PSIZE_T  ViewSize,
_In_ SECTION_INHERIT  InheritDisposition,
_In_ ULONG  AllocationType,
_In_ ULONG  Protect 
)
NTSTATUS NTAPI MmUnmapViewOfSection ( _In_ struct _EPROCESS Process,
_In_ PVOID  BaseAddress 
)
NTSTATUS NTAPI NtAllocateUserPhysicalPages ( _In_ HANDLE  ProcessHandle,
_Inout_ PULONG_PTR  NumberOfPages,
_Inout_ PULONG_PTR  UserPfnArray 
)
NTSYSCALLAPI NTSTATUS NTAPI NtAreMappedFilesTheSame ( _In_ PVOID  File1MappedAsAnImage,
_In_ PVOID  File2MappedAsFile 
)
NTSYSCALLAPI NTSTATUS NTAPI NtCreatePagingFile ( _In_ PUNICODE_STRING  FileName,
_In_ PLARGE_INTEGER  InitialSize,
_In_ PLARGE_INTEGER  MaxiumSize,
_In_ ULONG  Reserved 
)
_Must_inspect_result_ __kernel_entry NTSYSCALLAPI NTSTATUS NTAPI NtCreateSection ( _Out_ PHANDLE  SectionHandle,
_In_ ACCESS_MASK  DesiredAccess,
_In_opt_ POBJECT_ATTRIBUTES  ObjectAttributes,
_In_opt_ PLARGE_INTEGER  MaximumSize,
_In_ ULONG  SectionPageProtection,
_In_ ULONG  AllocationAttributes,
_In_opt_ HANDLE  FileHandle 
)
NTSYSCALLAPI NTSTATUS NTAPI NtExtendSection ( _In_ HANDLE  SectionHandle,
_In_ PLARGE_INTEGER  NewMaximumSize 
)
NTSYSCALLAPI NTSTATUS NTAPI NtFlushInstructionCache ( _In_ HANDLE  ProcessHandle,
_In_ PVOID  BaseAddress,
_In_ SIZE_T  NumberOfBytesToFlush 
)
NTSYSCALLAPI NTSTATUS NTAPI NtFlushVirtualMemory ( _In_ HANDLE  ProcessHandle,
_Inout_ PVOID BaseAddress,
_Inout_ PSIZE_T  RegionSize,
_Out_ PIO_STATUS_BLOCK  IoStatus 
)
NTSTATUS NTAPI NtFreeUserPhysicalPages ( _In_ HANDLE  ProcessHandle,
_Inout_ PULONG_PTR  NumberOfPages,
_Inout_ PULONG_PTR  UserPfnArray 
)
NTSTATUS NTAPI NtGetWriteWatch ( _In_ HANDLE  ProcessHandle,
_In_ ULONG  Flags,
_In_ PVOID  BaseAddress,
_In_ SIZE_T  RegionSize,
_In_ PVOID UserAddressArray,
_Out_ PULONG_PTR  EntriesInUserAddressArray,
_Out_ PULONG  Granularity 
)
NTSYSCALLAPI NTSTATUS NTAPI NtLockVirtualMemory ( _In_ HANDLE  ProcessHandle,
_Inout_ PVOID BaseAddress,
_Inout_ PSIZE_T  NumberOfBytesToLock,
_In_ ULONG  MapType 
)
NTSTATUS NTAPI NtMapUserPhysicalPages ( _In_ PVOID  VirtualAddresses,
_In_ ULONG_PTR  NumberOfPages,
_Inout_ PULONG_PTR  UserPfnArray 
)
NTSTATUS NTAPI NtMapUserPhysicalPagesScatter ( _In_ PVOID VirtualAddresses,
_In_ ULONG_PTR  NumberOfPages,
_Inout_ PULONG_PTR  UserPfnArray 
)
NTSYSCALLAPI NTSTATUS NTAPI NtMapViewOfSection ( _In_ HANDLE  SectionHandle,
_In_ HANDLE  ProcessHandle,
_Inout_ PVOID BaseAddress,
_In_ ULONG_PTR  ZeroBits,
_In_ SIZE_T  CommitSize,
_Inout_opt_ PLARGE_INTEGER  SectionOffset,
_Inout_ PSIZE_T  ViewSize,
_In_ SECTION_INHERIT  InheritDisposition,
_In_ ULONG  AllocationType,
_In_ ULONG  AccessProtection 
)
NTSYSCALLAPI NTSTATUS NTAPI NtOpenSection ( _Out_ PHANDLE  SectionHandle,
_In_ ACCESS_MASK  DesiredAccess,
_In_ POBJECT_ATTRIBUTES  ObjectAttributes 
)
NTSYSCALLAPI NTSTATUS NTAPI NtProtectVirtualMemory ( _In_ HANDLE  ProcessHandle,
_In_ PVOID BaseAddress,
_In_ SIZE_T NumberOfBytesToProtect,
_In_ ULONG  NewAccessProtection,
_Out_ PULONG  OldAccessProtection 
)
NTSYSCALLAPI NTSTATUS NTAPI NtQuerySection ( _In_ HANDLE  SectionHandle,
_In_ SECTION_INFORMATION_CLASS  SectionInformationClass,
_Out_ PVOID  SectionInformation,
_In_ SIZE_T  Length,
_Out_ PSIZE_T  ResultLength 
)
NTSYSCALLAPI NTSTATUS NTAPI NtQueryVirtualMemory ( _In_ HANDLE  ProcessHandle,
_In_ PVOID  Address,
_In_ MEMORY_INFORMATION_CLASS  VirtualMemoryInformationClass,
_Out_ PVOID  VirtualMemoryInformation,
_In_ SIZE_T  Length,
_Out_opt_ PSIZE_T  ResultLength 
)
NTSYSCALLAPI NTSTATUS NTAPI NtReadVirtualMemory ( _In_ HANDLE  ProcessHandle,
_In_ PVOID  BaseAddress,
_Out_ PVOID  Buffer,
_In_ SIZE_T  NumberOfBytesToRead,
_Out_opt_ PSIZE_T  NumberOfBytesRead 
)
NTSTATUS NTAPI NtResetWriteWatch ( _In_ HANDLE  ProcessHandle,
_In_ PVOID  BaseAddress,
_In_ SIZE_T  RegionSize 
)
NTSYSCALLAPI NTSTATUS NTAPI NtUnlockVirtualMemory ( _In_ HANDLE  ProcessHandle,
_Inout_ PVOID BaseAddress,
_Inout_ PSIZE_T  NumberOfBytesToUnlock,
_In_ ULONG  MapType 
)
NTSYSCALLAPI NTSTATUS NTAPI NtUnmapViewOfSection ( _In_ HANDLE  ProcessHandle,
_In_ PVOID  BaseAddress 
)
NTSYSCALLAPI NTSTATUS NTAPI NtWriteVirtualMemory ( _In_ HANDLE  ProcessHandle,
_In_ PVOID  BaseAddress,
_In_ PVOID  Buffer,
_In_ SIZE_T  NumberOfBytesToWrite,
_Out_opt_ PSIZE_T  NumberOfBytesWritten 
)
NTSYSAPI NTSTATUS NTAPI ZwAreMappedFilesTheSame ( _In_ PVOID  File1MappedAsAnImage,
_In_ PVOID  File2MappedAsFile 
)

Referenced by LdrpCheckForLoadedDll().

NTSYSAPI NTSTATUS NTAPI ZwCreatePagingFile ( _In_ PUNICODE_STRING  FileName,
_In_ PLARGE_INTEGER  InitialSize,
_In_ PLARGE_INTEGER  MaxiumSize,
_In_ ULONG  Reserved 
)
NTSYSAPI NTSTATUS NTAPI ZwExtendSection ( _In_ HANDLE  SectionHandle,
_In_ PLARGE_INTEGER  NewMaximumSize 
)
NTSYSAPI NTSTATUS NTAPI ZwLockVirtualMemory ( _In_ HANDLE  ProcessHandle,
_Inout_ PVOID BaseAddress,
_Inout_ PSIZE_T  NumberOfBytesToLock,
_In_ ULONG  MapType 
)
NTSYSAPI NTSTATUS NTAPI ZwProtectVirtualMemory ( _In_ HANDLE  ProcessHandle,
_In_ PVOID BaseAddress,
_In_ SIZE_T NumberOfBytesToProtect,
_In_ ULONG  NewAccessProtection,
_Out_ PULONG  OldAccessProtection 
)
NTSYSAPI NTSTATUS NTAPI ZwQuerySection ( _In_ HANDLE  SectionHandle,
_In_ SECTION_INFORMATION_CLASS  SectionInformationClass,
_Out_ PVOID  SectionInformation,
_In_ SIZE_T  Length,
_Out_opt_ PSIZE_T  ResultLength 
)
NTSYSAPI NTSTATUS NTAPI ZwQueryVirtualMemory ( _In_ HANDLE  ProcessHandle,
_In_ PVOID  Address,
_In_ MEMORY_INFORMATION_CLASS  VirtualMemoryInformationClass,
_Out_ PVOID  VirtualMemoryInformation,
_In_ SIZE_T  Length,
_Out_opt_ PSIZE_T  ResultLength 
)
NTSYSAPI NTSTATUS NTAPI ZwReadVirtualMemory ( _In_ HANDLE  ProcessHandle,
_In_ PVOID  BaseAddress,
_Out_ PVOID  Buffer,
_In_ SIZE_T  NumberOfBytesToRead,
_Out_opt_ PSIZE_T  NumberOfBytesRead 
)
NTSYSAPI NTSTATUS NTAPI ZwUnlockVirtualMemory ( _In_ HANDLE  ProcessHandle,
_Inout_ PVOID BaseAddress,
_Inout_ PSIZE_T  NumberOfBytesToUnlock,
_In_ ULONG  MapType 
)
NTSYSAPI NTSTATUS NTAPI ZwWriteVirtualMemory ( _In_ HANDLE  ProcessHandle,
_In_ PVOID  BaseAddress,
_In_ PVOID  Buffer,
_In_ SIZE_T  NumberOfBytesToWrite,
_Out_opt_ PSIZE_T  NumberOfBytesWritten 
)

Variable Documentation

_Inout_ PVOID * BaseAddress

Definition at line 404 of file mmfuncs.h.

Referenced by $endif(), AdvancedErrorChecks(), BehaviorChecks(), BiosDiskService(), BiosMiscService(), BiosMouseEnable(), BlImgLoadImageWithProgress2(), CcCopyData(), CcPreparePinWrite(), CcpUnpinData(), CheckAdjacentVADs(), CheckAlignment(), CheckSize(), CmpInitializeMachineDependentConfiguration(), CpuExceptionFilter(), CreateProcessInternalW(), DbgkMapViewOfSection(), DbgkUnMapViewOfSection(), DECLARE_INTERFACE_(), DiskBios32Post(), DosBIOSInitialize(), DosClonePsp(), DosCreatePsp(), DosInt21h(), DosLoadExecutableInternal(), DosMouseCleanup(), DosMouseDisable(), DosMouseEnable(), DosMouseInitialize(), DosTerminateProcess(), FAT12CountAvailableClusters(), FAT12FindAndMarkAvailableCluster(), FAT12GetNextCluster(), FAT12WriteCluster(), FAT16CountAvailableClusters(), FAT16FindAndMarkAvailableCluster(), FAT16GetNextCluster(), FAT16WriteCluster(), FAT32CountAvailableClusters(), FAT32FindAndMarkAvailableCluster(), FAT32GetNextCluster(), FAT32WriteCluster(), FileSectionViewPermissionCheck(), FlushViewOfFile(), GetProcessVersion(), HalpMapPhysicalMemory64(), HandlePageFault(), IMAGEHLP_RecalculateChecksum(), InitializeBiosInt32(), InitializeModeTable(), IntAgpCommitVirtual(), IntAgpFreeVirtual(), IopLoadServiceModule(), IopLoadUnloadDriver(), KdpSysReadControlSpace(), LdrpAllocateDataTableEntry(), LlbAllocateMemoryEntry(), LoadModule(), LoadProvider(), main(), MapFileAndCheckSumA(), MapFileAndCheckSumW(), MemCleanup(), MemInitialize(), MiAddHalIoMappings(), MiAllocateContiguousMemory(), MiBuildPfnDatabaseFromPages(), MiCheckVadsForLockOperation(), MiCreateArm3StaticMemoryArea(), MiFindContiguousMemory(), MiLoadUserSymbols(), MiLockVirtualMemory(), MiReadPage(), MiRosCleanupMemoryArea(), MiWriteProtectSystemImage(), MmAllocateNonCachedMemory(), MmCreateKernelStack(), MmFindRegion(), MmMapIoSpace(), MmMapViewOfArm3Section(), MmPapAllocatePagesInRange(), MmUnloadSystemImage(), NtFlushVirtualMemory(), NtLockVirtualMemory(), NtMapViewOfSection(), NtProtectVirtualMemory(), NtUnlockVirtualMemory(), PageFileBehaviorChecks(), PcMemGetBiosMemoryMap(), PpcGetMemoryMap(), PropertyLengthAsVariant(), RamdiskCreateDiskDevice(), RamdiskGetPartitionInfo(), RamdiskReadWriteReal(), RamdiskSetPartitionInfo(), RtlConvertPropertyToVariant(), RtlConvertVariantToProperty(), RtlDestroyHeap(), RtlpDestroyHeapSegment(), RtlpInitEnvironment(), ScrCreate(), ScrLoadFontTable(), SeiCreateShimInfo(), SeiInit(), SimpleErrorChecks(), START_TEST(), SystemProcessWorker(), Test_ImageSection2(), Test_NoLoadSection(), Test_PageFileSection(), test_SymFromAddr(), test_SymFromName(), Test_Truncate(), TestMap(), VbeGetVideoMemoryBaseAddress(), VbeSetMode(), VdmpInitialize(), VidBiosDrawGlyph(), VidBiosPost(), VidBiosSetVideoMode(), VidBiosVideoService(), VirtualLock(), and VirtualUnlock().

_In_ ACCESS_MASK DesiredAccess

Definition at line 360 of file mmfuncs.h.

Definition at line 172 of file mmfuncs.h.

Definition at line 360 of file mmfuncs.h.