|
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.