mirror of
https://github.com/radareorg/radare2.git
synced 2025-02-03 20:22:38 +00:00
d41e40ba05
- Make proper use of the config-user.mk - Accelerate build by manually checking timestamps of bin/lib to objs/srcs - Use '-MD' by default - Lot of minor fixups done in multiple places - Fix PREFIX/LIBDIR installation/loading problems for plugins - Some segfaults has been fixed - Use R_API in r_core and r_lib * Add 'vm' to be build by libr by default * Add 'libs.c' in core/ to manage plugins from core - Added 'dir.plugins' - Make '-e' and '-L' radare2 flags work - Plugins are not loaded multiple times now * Added r_lib_types string array containing plugin types strings * Minor fixups in r_debug - Properly check 'contsc' delegate - Separate r_debug_wait() * Rename dbg-ptrace into dbg_ptrace --HG-- rename : libr/debug/p/dbg-ptrace.c => libr/debug/p/dbg_ptrace.c
r_debug ======= Debugger API for radare2 We need to connect multiple pieces... debugger engine: vm, qemu, bochs, ptrace, mach, w32dbg... controlflow commands: (should be splitted in two layers) - continue -- low level - step -- low level - trace --- high level one - ... the control flow commands depend on other stuff to decide how to work..this is for example if the arch doesnt supports continuation, we should provide a step based continue. The same when a watchpoint is activated and the arch didnt supports hardware regs for this purpose. We also need a load/store/dump/restore functions to move the program from one engine to another (ptrace -> qemu).. we should provide a way for all this operations between them. [continue] |--- check if bp api allows us to continue or we should step into.. |--- check if debug plugin supports continue [getregs] |--- r_reg give us a list of registers | - dr (show bitsize debug registers) // 32 by default | - dr 32 (show 32 bit debug registers) // depends on size | - dr eax (show 'eax' register value) | - dr al (show 8bit register 'al') | - dr eax=33 (set 'eax' register value)