This feature adds an API to access the memory of a process by the sections of the binary and shared libraries.
API examples:
- d.binary (class representing the binary executable being debugged)
- d.binary.sections (SectionList)
- d.binary.sections["text"] (Section, section .text)
- d.binary.sections[0] (Section, first section)
- d.libraries / d.libs (class representing the shared objects loaded by the binary)
- d.libs.filter(filter function for the libraries, e.g., d.libs.filter("libc"))
- d.libs["libc"] (exact match or only instance)
- d.binary.symbols (symbol accessor like the debugger's but with only the simbols in that binary file)
Specification details:
- Accessors need to be dynamic: parsing is done on demand when the user and cached afterwards (we do not currently support binaries changing during execution)
This feature adds an API to access the memory of a process by the sections of the binary and shared libraries.
API examples:
Specification details: