|
libmemalloc
v3.0.00
Modern Memory Allocator
|
Represents the header for a memory block. More...
Public Attributes | |
| uintptr_t | magic |
| size_t | size |
| uint32_t | free |
| uint32_t | marked |
| const char * | file |
| uint64_t | line |
| uintptr_t | canary |
| struct BlockHeader * | next |
| struct BlockHeader * | prev |
| struct BlockHeader * | fl_next |
| struct BlockHeader * | fl_prev |
Represents the header for a memory block.
This structure manages metadata for each block within the heap, including size, status, and debugging information.
| uintptr_t block_header_t::canary |
Canary value for buffer-overflow detection
| const char* block_header_t::file |
Source file of allocation (for debugging)
| struct BlockHeader* block_header_t::fl_next |
Pointer to the next block on free list
| struct BlockHeader* block_header_t::fl_prev |
Pointer to the previous block on free list
| uint32_t block_header_t::free |
1 if block is free, 0 if allocated
| uint64_t block_header_t::line |
Line number of allocation (for debugging)
| uintptr_t block_header_t::magic |
Magic number for integrity check
| uint32_t block_header_t::marked |
Garbage collector mark flag
| struct BlockHeader* block_header_t::next |
Pointer to the next block
| struct BlockHeader* block_header_t::prev |
Pointer to the previous block
| size_t block_header_t::size |
Total block size (includes header, data, and canary)