Rizin
unix-like reverse engineering framework and cli tools
|
#include <windows.h>
#include <winternl.h>
Go to the source code of this file.
Macros | |
#define | EXTRA_FLAG (1ULL << (sizeof (size_t) * 8 - 1)) |
#define | SHIFT 16 |
#define | LFH_BLOCK (1 << (SHIFT)) |
#define | LARGE_BLOCK (1 << (SHIFT + 1)) |
#define | NT_BLOCK (1 << (SHIFT + 2)) |
#define | SEGMENT_HEAP_BLOCK (1 << (SHIFT + 3)) |
#define | VS_BLOCK (1 << (SHIFT + 4)) |
#define | BACKEND_BLOCK (1 << (SHIFT + 5)) |
Enumerations | |
enum | _RTLP_HP_LOCK_TYPE { HeapLockPaged , HeapLockNonPaged , HeapLockTypeMax } |
enum | { PAGE_RANGE_FLAGS_LFH_SUBSEGMENT = 0x01 , PAGE_RANGE_FLAGS_COMMITED = 0x02 , PAGE_RANGE_FLAGS_ALLOCATED = 0x04 , PAGE_RANGE_FLAGS_FIRST = 0x08 , PAGE_RANGE_FLAGS_VS_SUBSEGMENT = 0x20 } |
Functions | |
PDEBUG_BUFFER (NTAPI *RtlCreateQueryDebugBuffer)(IN DWORD Size | |
NTSTATUS (NTAPI *RtlQueryProcessDebugInformation)(IN DWORD ProcessId | |
Variables | |
IN BOOLEAN | EventPair |
IN DWORD | DebugInfoClassMask |
IN DWORD IN OUT PDEBUG_BUFFER | DebugBuffer |
__kernel_entry IN PROCESSINFOCLASS | ProcessInformationClass |
__kernel_entry IN PROCESSINFOCLASS OUT PVOID | ProcessInformation |
__kernel_entry IN PROCESSINFOCLASS OUT PVOID IN ULONG | ProcessInformationLength |
__kernel_entry IN PROCESSINFOCLASS OUT PVOID IN ULONG OUT PULONG | ReturnLength |
#define BACKEND_BLOCK (1 << (SHIFT + 5)) |
Definition at line 36 of file windows_heap.h.
#define EXTRA_FLAG (1ULL << (sizeof (size_t) * 8 - 1)) |
Definition at line 28 of file windows_heap.h.
#define LARGE_BLOCK (1 << (SHIFT + 1)) |
Definition at line 32 of file windows_heap.h.
#define LFH_BLOCK (1 << (SHIFT)) |
Definition at line 31 of file windows_heap.h.
#define NT_BLOCK (1 << (SHIFT + 2)) |
Definition at line 33 of file windows_heap.h.
#define SEGMENT_HEAP_BLOCK (1 << (SHIFT + 3)) |
Definition at line 34 of file windows_heap.h.
#define SHIFT 16 |
Definition at line 30 of file windows_heap.h.
#define VS_BLOCK (1 << (SHIFT + 4)) |
Definition at line 35 of file windows_heap.h.
typedef struct _DEBUG_BUFFER DEBUG_BUFFER |
typedef struct _DEBUG_HEAP_INFORMATION DEBUG_HEAP_INFORMATION |
typedef struct _HEAP_BUCKET HEAP_BUCKET |
typedef struct _HEAP_BUCKET_COUNTERS HEAP_BUCKET_COUNTERS |
typedef struct _HEAP_BUCKET_RUN_INFO HEAP_BUCKET_RUN_INFO |
typedef struct _HEAP_COUNTERS HEAP_COUNTERS |
typedef struct _HEAP_ENTRY HEAP_ENTRY |
typedef struct _HEAP_ENTRY_EXTRA HEAP_ENTRY_EXTRA |
typedef struct _HEAP_EXTENDED_ENTRY HEAP_EXTENDED_ENTRY |
typedef struct _HEAP_LARGE_ALLOC_DATA HEAP_LARGE_ALLOC_DATA |
typedef struct _HEAP_LFH_AFFINITY_SLOT HEAP_LFH_AFFINITY_SLOT |
typedef struct _HEAP_LFH_BUCKET HEAP_LFH_BUCKET |
typedef struct _HEAP_LFH_CONTEXT HEAP_LFH_CONTEXT |
typedef struct _HEAP_LFH_FAST_REF HEAP_LFH_FAST_REF |
typedef struct _HEAP_LFH_MEM_POLICIES HEAP_LFH_MEM_POLICIES |
typedef struct _HEAP_LFH_SUBSEGMENT HEAP_LFH_SUBSEGMENT |
typedef struct _HEAP_LFH_SUBSEGMENT_OWNER HEAP_LFH_SUBSEGMENT_OWNER |
typedef struct _HEAP_LFH_SUBSEGMENT_STAT HEAP_LFH_SUBSEGMENT_STAT |
typedef struct _HEAP_LFH_SUBSEGMENT_STATS HEAP_LFH_SUBSEGMENT_STATS |
typedef struct _HEAP_LOCAL_DATA HEAP_LOCAL_DATA |
typedef struct _HEAP_LOCAL_SEGMENT_INFO HEAP_LOCAL_SEGMENT_INFO |
typedef struct _HEAP_LOCK HEAP_LOCK |
typedef struct _HEAP_PAGE_RANGE_DESCRIPTOR HEAP_PAGE_RANGE_DESCRIPTOR |
typedef struct _HEAP_PAGE_SEGMENT HEAP_PAGE_SEGMENT |
typedef struct _HEAP_PSEUDO_TAG_ENTRY HEAP_PSEUDO_TAG_ENTRY |
typedef struct _HEAP_RUNTIME_MEMORY_STATS HEAP_RUNTIME_MEMORY_STATS |
typedef struct _HEAP_SEG_CONTEXT HEAP_SEG_CONTEXT |
typedef struct _HEAP_SEGMENT HEAP_SEGMENT |
typedef struct _HEAP_SUBALLOCATOR_CALLBACKS HEAP_SUBALLOCATOR_CALLBACKS |
typedef struct _HEAP_SUBSEGMENT HEAP_SUBSEGMENT |
typedef struct _HEAP_TAG_ENTRY HEAP_TAG_ENTRY |
typedef struct _HEAP_TUNING_PARAMETERS HEAP_TUNING_PARAMETERS |
typedef struct _HEAP_UNPACKED_ENTRY HEAP_UNPACKED_ENTRY |
typedef struct _HEAP_USERDATA_HEADER HEAP_USERDATA_HEADER |
typedef struct _HEAP_USERDATA_OFFSETS HEAP_USERDATA_OFFSETS |
typedef struct _HEAP_VIRTUAL_ALLOC_ENTRY HEAP_VIRTUAL_ALLOC_ENTRY |
typedef struct _HEAP_VS_CHUNK_HEADER HEAP_VS_CHUNK_HEADER |
typedef struct _HEAP_VS_CHUNK_HEADER_SIZE HEAP_VS_CHUNK_HEADER_SIZE |
typedef struct _HEAP_VS_CONTEXT HEAP_VS_CONTEXT |
typedef struct _HEAP_VS_SUBSEGMENT HEAP_VS_SUBSEGMENT |
typedef struct _HeapBlock HeapBlock |
typedef struct _HeapBlockBasicInfo HeapBlockBasicInfo |
typedef struct _HeapBlockExtraInfo HeapBlockExtraInfo |
typedef struct _HeapInformation HeapInformation |
typedef struct _INTERLOCK_SEQ INTERLOCK_SEQ |
typedef struct _LFH_BLOCK_ZONE LFH_BLOCK_ZONE |
typedef struct _DEBUG_BUFFER * PDEBUG_BUFFER |
typedef struct _DEBUG_HEAP_INFORMATION * PDEBUG_HEAP_INFORMATION |
Definition at line 41 of file windows_heap.h.
typedef struct _HEAP_BUCKET * PHEAP_BUCKET |
typedef struct _HEAP_BUCKET_COUNTERS * PHEAP_BUCKET_COUNTERS |
typedef struct _HEAP_BUCKET_RUN_INFO * PHEAP_BUCKET_RUN_INFO |
typedef struct _HEAP_COUNTERS * PHEAP_COUNTERS |
typedef struct _HEAP_ENTRY * PHEAP_ENTRY |
typedef struct _HEAP_ENTRY_EXTRA * PHEAP_ENTRY_EXTRA |
typedef struct _HEAP_EXTENDED_ENTRY * PHEAP_EXTENDED_ENTRY |
typedef struct _HEAP_LARGE_ALLOC_DATA * PHEAP_LARGE_ALLOC_DATA |
typedef struct _HEAP_LFH_AFFINITY_SLOT * PHEAP_LFH_AFFINITY_SLOT |
typedef struct _HEAP_LFH_BUCKET * PHEAP_LFH_BUCKET |
typedef struct _HEAP_LFH_CONTEXT * PHEAP_LFH_CONTEXT |
typedef struct _HEAP_LFH_FAST_REF * PHEAP_LFH_FAST_REF |
typedef struct _HEAP_LFH_MEM_POLICIES * PHEAP_LFH_MEM_POLICIES |
typedef struct _HEAP_LFH_SUBSEGMENT * PHEAP_LFH_SUBSEGMENT |
typedef struct _HEAP_LFH_SUBSEGMENT_ENCODED_OFFSETS * PHEAP_LFH_SUBSEGMENT_ENCODED_OFFSETS |
typedef struct _HEAP_LFH_SUBSEGMENT_OWNER * PHEAP_LFH_SUBSEGMENT_OWNER |
typedef struct _HEAP_LFH_SUBSEGMENT_STAT * PHEAP_LFH_SUBSEGMENT_STAT |
typedef struct _HEAP_LFH_SUBSEGMENT_STATS * PHEAP_LFH_SUBSEGMENT_STATS |
typedef struct _HEAP_LOCAL_DATA * PHEAP_LOCAL_DATA |
Definition at line 38 of file windows_heap.h.
typedef struct _HEAP_LOCAL_SEGMENT_INFO * PHEAP_LOCAL_SEGMENT_INFO |
typedef struct _HEAP_LOCK * PHEAP_LOCK |
typedef struct _HEAP_OPPORTUNISTIC_LARGE_PAGE_STATS * PHEAP_OPPORTUNISTIC_LARGE_PAGE_STATS |
typedef struct _HEAP_PAGE_RANGE_DESCRIPTOR * PHEAP_PAGE_RANGE_DESCRIPTOR |
typedef struct _HEAP_PAGE_SEGMENT * PHEAP_PAGE_SEGMENT |
typedef struct _HEAP_PSEUDO_TAG_ENTRY * PHEAP_PSEUDO_TAG_ENTRY |
typedef struct _HEAP_RUNTIME_MEMORY_STATS * PHEAP_RUNTIME_MEMORY_STATS |
typedef struct _HEAP_SEG_CONTEXT * PHEAP_SEG_CONTEXT |
typedef struct _HEAP_SEGMENT * PHEAP_SEGMENT |
typedef struct _HEAP_SUBALLOCATOR_CALLBACKS * PHEAP_SUBALLOCATOR_CALLBACKS |
typedef struct _HEAP_SUBSEGMENT * PHEAP_SUBSEGMENT |
Definition at line 39 of file windows_heap.h.
typedef struct _HEAP_TAG_ENTRY * PHEAP_TAG_ENTRY |
typedef struct _HEAP_TUNING_PARAMETERS * PHEAP_TUNING_PARAMETERS |
typedef struct _HEAP_UNPACKED_ENTRY * PHEAP_UNPACKED_ENTRY |
typedef struct _HEAP_USERDATA_HEADER * PHEAP_USERDATA_HEADER |
typedef struct _HEAP_USERDATA_OFFSETS * PHEAP_USERDATA_OFFSETS |
typedef struct _HEAP_VIRTUAL_ALLOC_ENTRY * PHEAP_VIRTUAL_ALLOC_ENTRY |
typedef struct _HEAP_VS_CHUNK_HEADER * PHEAP_VS_CHUNK_HEADER |
typedef struct _HEAP_VS_CHUNK_HEADER_SIZE * PHEAP_VS_CHUNK_HEADER_SIZE |
typedef struct _HEAP_VS_CONTEXT * PHEAP_VS_CONTEXT |
typedef struct _HEAP_VS_SUBSEGMENT * PHEAP_VS_SUBSEGMENT |
typedef struct _HeapBlock * PHeapBlock |
typedef struct _HeapBlockBasicInfo * PHeapBlockBasicInfo |
typedef struct _HeapBlockExtraInfo * PHeapBlockExtraInfo |
typedef struct _HeapInformation * PHeapInformation |
typedef struct _INTERLOCK_SEQ * PINTERLOCK_SEQ |
typedef struct _LFH_BLOCK_ZONE * PLFH_BLOCK_ZONE |
Definition at line 40 of file windows_heap.h.
typedef struct _RTL_BALANCED_NODE * PRTL_BALANCED_NODE |
Definition at line 43 of file windows_heap.h.
typedef struct _RTL_BITMAP_EX * PRTL_BITMAP_EX |
typedef struct _RTL_HEAP_MEMORY_LIMIT_DATA * PRTL_HEAP_MEMORY_LIMIT_DATA |
typedef struct _RTL_HP_ENV_HANDLE * PRTL_HP_ENV_HANDLE |
typedef struct _RTL_HP_LFH_CONFIG * PRTL_HP_LFH_CONFIG |
typedef struct _RTL_HP_SEG_ALLOC_POLICY * PRTL_HP_SEG_ALLOC_POLICY |
typedef struct _RTL_HP_VS_CONFIG * PRTL_HP_VS_CONFIG |
typedef struct _RTL_RB_TREE * PRTL_RB_TREE |
typedef struct _SEGMENT_HEAP * PSEGMENT_HEAP |
typedef struct _USER_MEMORY_CACHE_ENTRY * PUSER_MEMORY_CACHE_ENTRY |
typedef struct _RTL_BALANCED_NODE RTL_BALANCED_NODE |
typedef struct _RTL_BITMAP_EX RTL_BITMAP_EX |
typedef struct _RTL_HEAP_MEMORY_LIMIT_DATA RTL_HEAP_MEMORY_LIMIT_DATA |
typedef struct _RTL_HP_ENV_HANDLE RTL_HP_ENV_HANDLE |
typedef struct _RTL_HP_LFH_CONFIG RTL_HP_LFH_CONFIG |
typedef struct _RTL_HP_SEG_ALLOC_POLICY RTL_HP_SEG_ALLOC_POLICY |
typedef struct _RTL_HP_VS_CONFIG RTL_HP_VS_CONFIG |
typedef struct _RTL_RB_TREE RTL_RB_TREE |
typedef enum _RTLP_HP_LOCK_TYPE RTLP_HP_LOCK_TYPE |
typedef struct _SEGMENT_HEAP SEGMENT_HEAP |
typedef struct _USER_MEMORY_CACHE_ENTRY USER_MEMORY_CACHE_ENTRY |
anonymous enum |
Enumerator | |
---|---|
PAGE_RANGE_FLAGS_LFH_SUBSEGMENT | |
PAGE_RANGE_FLAGS_COMMITED | |
PAGE_RANGE_FLAGS_ALLOCATED | |
PAGE_RANGE_FLAGS_FIRST | |
PAGE_RANGE_FLAGS_VS_SUBSEGMENT |
Definition at line 389 of file windows_heap.h.
enum _RTLP_HP_LOCK_TYPE |
Enumerator | |
---|---|
HeapLockPaged | |
HeapLockNonPaged | |
HeapLockTypeMax |
Definition at line 318 of file windows_heap.h.
NTSTATUS | ( | NTAPI * | RtlQueryProcessDebugInformation | ) |
PDEBUG_BUFFER | ( | NTAPI * | RtlCreateQueryDebugBuffer | ) |
IN DWORD IN OUT PDEBUG_BUFFER DebugBuffer |
Definition at line 1002 of file windows_heap.h.
IN DWORD DebugInfoClassMask |
Definition at line 1001 of file windows_heap.h.
IN BOOLEAN EventPair |
Definition at line 996 of file windows_heap.h.
Definition at line 1012 of file windows_heap.h.
__kernel_entry IN PROCESSINFOCLASS ProcessInformationClass |
Definition at line 1011 of file windows_heap.h.
Definition at line 1013 of file windows_heap.h.