My work in progress on DWARF exploration.
|
||
---|---|---|
dwex | ||
main.py | ||
README.md |
Why ?
As an attempt to provide similar functionality as Vector CanApe does. But only ONE instance of CanApe can be running at the computer and trying to load different ELF file to inspect variables is a pain and can easily result in broken project, workflow or headache.
Usage
usage: main.py [-h] [--include-file-name] [--version] [file]
Expands symbols (global variables) types.
positional arguments:
file ELF file to try to extract symbols
options:
-h, --help show this help message and exit
--include-file-name Display filename at the beginning
--version show program's version number and exit
Data displayed by this script are informative only!
Output
> python main.py ../Playground_C/build/playground_c
0x4030 my_stuff
0x4030 my_stuff.first
0x4030 my_stuff.first.number_1
0x4038 my_stuff.first.number_2
0x403c my_stuff.first.number_3
0x403e my_stuff.first.number_4
0x403f my_stuff.first.number_5
0x4040 my_stuff.second
0x4038 my_little_stuff
0x4038 my_little_stuff.one
0x4038 my_little_stuff.two
0x4040 my_small_stuff
0x4040 my_small_stuff.one
0x4040 my_small_stuff.one[0]
...
0x4057 my_small_stuff.one[23]
0x4040 my_small_stuff.structure
0x4040 my_small_stuff.structure.first
0x4040 my_small_stuff.structure.first.number_1
0x4048 my_small_stuff.structure.first.number_2
0x404c my_small_stuff.structure.first.number_3
0x404e my_small_stuff.structure.first.number_4
0x404f my_small_stuff.structure.first.number_5
0x4050 my_small_stuff.structure.second
0x4060 thing
0x4060 thing.first
0x4060 thing.first.number_1
0x4068 thing.first.number_2
0x406c thing.first.number_3
0x406e thing.first.number_4
0x406f thing.first.number_5
0x4070 thing.second
Licensing
This script is based on dwex
DWarf EXplorer by "Seva Alekseyev". The
original source code of dwex
can be found on
GitHub1
Since it is derived work and licensing can be a mess, the resulting license follows the original and thus the code is licensed under BSD license.