mirror of
https://github.com/reactos/reactos.git
synced 2025-08-03 06:46:06 +00:00
Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys.
This commit is contained in:
parent
b94e2d8ca0
commit
c2c66aff7d
24198 changed files with 0 additions and 37285 deletions
498
sdk/include/ndk/mmfuncs.h
Normal file
498
sdk/include/ndk/mmfuncs.h
Normal file
|
@ -0,0 +1,498 @@
|
|||
/*++ NDK Version: 0098
|
||||
|
||||
Copyright (c) Alex Ionescu. All rights reserved.
|
||||
|
||||
Header Name:
|
||||
|
||||
mmfuncs.h
|
||||
|
||||
Abstract:
|
||||
|
||||
Functions definitions for the Memory Manager.
|
||||
|
||||
Author:
|
||||
|
||||
Alex Ionescu (alexi@tinykrnl.org) - Updated - 27-Feb-2006
|
||||
|
||||
--*/
|
||||
|
||||
#ifndef _MMFUNCS_H
|
||||
#define _MMFUNCS_H
|
||||
|
||||
//
|
||||
// Dependencies
|
||||
//
|
||||
#include <umtypes.h>
|
||||
#include <mmtypes.h>
|
||||
|
||||
#ifndef NTOS_MODE_USER
|
||||
|
||||
//
|
||||
// Section 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
|
||||
);
|
||||
|
||||
#endif
|
||||
|
||||
//
|
||||
// Native calls
|
||||
//
|
||||
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, __drv_allocatesMem(Mem))
|
||||
__kernel_entry
|
||||
NTSYSCALLAPI
|
||||
NTSTATUS
|
||||
NTAPI
|
||||
NtAllocateVirtualMemory(
|
||||
_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,
|
||||
_Inout_ __drv_freesMem(Mem) PVOID *BaseAddress,
|
||||
_Inout_ PSIZE_T RegionSize,
|
||||
_In_ ULONG FreeType
|
||||
);
|
||||
|
||||
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
|
||||
);
|
||||
|
||||
_Must_inspect_result_
|
||||
_At_(*BaseAddress, __drv_allocatesMem(Mem))
|
||||
__kernel_entry
|
||||
NTSYSAPI
|
||||
NTSTATUS
|
||||
NTAPI
|
||||
ZwAllocateVirtualMemory(
|
||||
_In_ HANDLE ProcessHandle,
|
||||
_Inout_ _Outptr_result_buffer_(*RegionSize) PVOID *BaseAddress,
|
||||
_In_ ULONG_PTR ZeroBits,
|
||||
_Inout_ PSIZE_T RegionSize,
|
||||
_In_ ULONG AllocationType,
|
||||
_In_ ULONG Protect
|
||||
);
|
||||
|
||||
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,
|
||||
_In_ ACCESS_MASK DesiredAccess,
|
||||
_In_opt_ POBJECT_ATTRIBUTES ObjectAttributes,
|
||||
_In_opt_ PLARGE_INTEGER MaximumSize,
|
||||
_In_ ULONG SectionPageProtection,
|
||||
_In_ ULONG AllocationAttributes,
|
||||
_In_opt_ HANDLE FileHandle
|
||||
);
|
||||
|
||||
NTSYSAPI
|
||||
NTSTATUS
|
||||
NTAPI
|
||||
ZwExtendSection(
|
||||
_In_ HANDLE SectionHandle,
|
||||
_In_ PLARGE_INTEGER NewMaximumSize
|
||||
);
|
||||
|
||||
_IRQL_requires_max_(PASSIVE_LEVEL)
|
||||
NTSYSAPI
|
||||
NTSTATUS
|
||||
NTAPI
|
||||
ZwFreeVirtualMemory(
|
||||
_In_ HANDLE ProcessHandle,
|
||||
_Inout_ __drv_freesMem(Mem) PVOID *BaseAddress,
|
||||
_Inout_ PSIZE_T RegionSize,
|
||||
_In_ ULONG FreeType
|
||||
);
|
||||
|
||||
NTSYSAPI
|
||||
NTSTATUS
|
||||
NTAPI
|
||||
ZwLockVirtualMemory(
|
||||
_In_ HANDLE ProcessHandle,
|
||||
_Inout_ PVOID *BaseAddress,
|
||||
_Inout_ PSIZE_T NumberOfBytesToLock,
|
||||
_In_ ULONG MapType
|
||||
);
|
||||
|
||||
_IRQL_requires_max_(PASSIVE_LEVEL)
|
||||
NTSYSAPI
|
||||
NTSTATUS
|
||||
NTAPI
|
||||
ZwMapViewOfSection(
|
||||
_In_ HANDLE SectionHandle,
|
||||
_In_ HANDLE ProcessHandle,
|
||||
_Outptr_result_bytebuffer_(*ViewSize) 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 Win32Protect
|
||||
);
|
||||
|
||||
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
|
||||
);
|
||||
|
||||
_IRQL_requires_max_(PASSIVE_LEVEL)
|
||||
NTSYSAPI
|
||||
NTSTATUS
|
||||
NTAPI
|
||||
ZwUnmapViewOfSection(
|
||||
_In_ HANDLE ProcessHandle,
|
||||
_In_opt_ PVOID BaseAddress
|
||||
);
|
||||
|
||||
NTSYSAPI
|
||||
NTSTATUS
|
||||
NTAPI
|
||||
ZwWriteVirtualMemory(
|
||||
_In_ HANDLE ProcessHandle,
|
||||
_In_ PVOID BaseAddress,
|
||||
_In_ PVOID Buffer,
|
||||
_In_ SIZE_T NumberOfBytesToWrite,
|
||||
_Out_opt_ PSIZE_T NumberOfBytesWritten
|
||||
);
|
||||
|
||||
#endif
|
Loading…
Add table
Add a link
Reference in a new issue