Glibc*
class now rely on ctypes.Structure
#869
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description/Motivation/Screenshots
To parse the heap, the old way of either relying on the symbol
malloc_state
or our own classMallocStateStruct
both had issues.This PR addresses this by simplifying the code and implementing our own
ctypes.Structure
for bothGlibcArena
andGlibcHeapInfo
. This has the huge advantage taht we can tweak easily the structure themselves as the libc changes them. This is way less error-prone (#854 is one of the latest example of error due to bad offset)Against which architecture was this tested ?
"Tested" indicates that the PR works and the unit test (i.e.
make test
) run passes without issue.Checklist
dev
branch, notmain
.