AVRF_HEAP_ALLOCATION structure (avrfsdk.h)

Stores metadata information about heap allocation.

Syntax

typedef struct _AVRF_HEAP_ALLOCATION {
  ULONG64                     HeapHandle;
  ULONG64                     UserAllocation;
  ULONG64                     UserAllocationSize;
  ULONG64                     Allocation;
  ULONG64                     AllocationSize;
  ULONG                       UserAllocationState;
  ULONG                       HeapState;
  ULONG64                     HeapContext;
  PAVRF_BACKTRACE_INFORMATION BackTraceInformation;
} AVRF_HEAP_ALLOCATION, *PAVRF_HEAP_ALLOCATION;

Members

HeapHandle

The handle to the heap being enumerated.

UserAllocation

The address of the heap allocation as seen by the application.

UserAllocationSize

The size, in bytes, of the application's allocation on the heap.

Allocation

The address of the heap allocation as seen by the operating system.

AllocationSize

The size, in bytes, of the heap allocation as seen by the operating system.

UserAllocationState

One of the values in the eUserAllocationState enumerated type.

HeapState

The state of the heap allocation. The user can extract one of the values in the eHeapAllocationState enum after AND-ing the HeapStateMask value.

HeapContext

The context of the heap currently allocated.

BackTraceInformation

A pointer to an AVRF_BACKTRACE_INFORMATION structure containing information about the last operation that occurred on the allocation.

When available, it can be the stack backtrace of the place where the address specified in the UserAllocation member of the structure was allocated (if UserAllocationState is AllocationstateBusy) or where the address specified in the UserAllocation member was freed (if UserAllocationState is AllocationStateFree).

Requirements

Requirement Value
Minimum supported client Windows XP [desktop apps only]
Minimum supported server Windows Server 2003 [desktop apps only]
Header avrfsdk.h

See also

Resource Enumeration

VerifierEnumerateResource