Fix software stepping in arm
p/io_ptrace now supports /proc/pid/mem io
Added =!help =!mem and =!ptrace to io/ptrace
Hide invalid section sizes messages
Flex is no longer mandatory for configure
Fix overflow in r_core_cmd0
vm_protect works again on iOS (using VM_PROT_COPY)
ptrace-cont is just a detach
fix build with latest ios sdk
- Protect possible index out of array in osx register code
- Fix possible segfault in debugger backtrace
- Fix osx debug register state write
- Fix software stepping. Needs more work and test on mips
- New flag: rax2 -d . force integer output value (no hex or so)
- Fix 'i' command output
- Support negative integer values in rax2
- Fix column selection draw in r_print_hexdump
- Implement p=p and p=e commants
- Disallow visual insert if file is readonly
- Similar to pZ, but
- Honor -w flag to create file if possible
- Use new r_io_create() api
- Add scr.sparse to show hexdump in sparse mode
- dro is working again
* Dummy agt command (analyze graph to destination)
- Still wip, requires some changes in r_anal api
* Handle ap? command
* Use core->dbg->bits in core_reg
* dbt - backtrace accepts an argument to redefine ebp
* Use r_core_seek_delta in visual (fix Vh = 0xFFFFF..)
- Added breakpoint and code analysis plugins for bf
- *mem++ != mem[0]++
- Full register get/set support
- Support for step and continue-until-syscall
- Work in progress breakpoint support
* Added bfvm_reset() hooked to plugin->kill
* Enhacements in r_core and r_debug for better debugger support
- Added plugin->step_over delegate
* Find recoil
* Set pc to addr-recoil properly
* Fixed bp_restore: per bp, check if handled, else do via io.write
- Improved debug_gdb
* Added 'read all regs to buffer'
* Added breakpoint callback: check if supported first time, else return FALSE
- Maybe something else...
- r2 -d gdb://<host>:<port>
- register maps not yet implemented
- some basic step/continue should work in cfg.debug=true
- gdbwrap instance is shared between RIO and RDebug
* RDebug is now arch-sensitive
- Plugins describe which architectures and register sizes are supported
- Native debugger is restricted to local CPU
- Remote debugger (GDB) arch can be specified with -e asm.arch=arm
* Fix some random warnings
* Move R_ASM_ARCH into R_SYS_ARCH
- Helper functions to translate id to string and string to id
are now in util/sys.c (r_util)
- Move all R_SYS_* from r_util to r_types
- Endianness, OS, CPU and regsize is now 'global'
* Fix build of python plugin in OpenBSD (python2.5)
* Fix initialization of dbg->arch and remove useless printf
* Do not compile cons/color.c (unused)
* Use snprintf, memcpy instead of sprintf/strcpy
* Display TODO message in r2 -L
* Implement rax2 -s - and rax2 -
* Honor dbg->tid in many places
* Implement basic stuff for dbg->reason
- Only w32 and *nix atm
- Not yet displayed or used
- Added many new reason types in enum
* Fix w32 register map
* Handle attach:// in io_w32dbg plugin
* Implement w32 process and thread list
- You can now select the thread
> dp # list pids
> dp=1424 # attach to pid
> dpt # list threads
> dpt=580 # select thread
* Added dummy code to list windows
- arm-darwin seems to not support stepping, mips follows
- Delegate swstep responsability to r_debug api
* Implement set registers in arm-darwin
- write in memory is not yet working
* Some fixes in memory regions list in arm-darwin
* Show call decompilations under the opcode as a comment
* Rename RRegister as RReg
- Deprecate r_reg_init and use r_reg_new
- Rewrite the list.h dependency in r_reg in order to use r_list
- Fix some memory leaks
* Implement push/pop methods in RReg class
- add test case using it
- will be used for register diffing and tracing
* Check if file exists before launching rabin to avoid noisy messages
* Disable io.va when using the debugger
* io.va is now enabled by default (static-analysis-friendly)
* Added 'S' key in visual mode (step over)
* Safer 'dcc' and 'dcr' commands using step over if necessary
- Skip current instruction (do not lock on calls, rets..)
* Implement step over functionality
- Using continue-until-opcode-type call
- Implemented continue-until-syscall in the same way
* Fix r_str_hash() algorithm to avoid colisions
* Added r_sys_bt()
* Merge r_trace into r_debug (RDebugTrace)
- Implement 'dt' command to manage debugging traces
- TODO: Track register values and memory changes
- Added dbg.trace and dbg.trace.tag
* Added r_sys_now() to retrieve ut64 value of current time
- Must check endianness issues
* Initial work trying to implement RPATH support to ELF
* Less flat command tree
- 'dt' is now 'dbt'
- 'dk' is now 'dpk'
* Some more random syntax cleanup fixes
* Say 'yes/no' instead of 'ok/fail' in check-langs script
- Integrated with core 'as' command. as? for help
- Display formatted parametters of syscalls
- Needs to fully implement this everywhere
- Syscall argument parsing is not yet complete (<4args)
- r_debug_arg_{set|get}
* Implement continue until syscall on Linux debugger backend
* Lot of syntax cleanup to use the new code convention
- Clean r_sign, r_search, r_syscall
* Define global R_SYS_ARCH, _OS and _BITS
- Handle asm.os and asm.arch to hook r_syscall plugins
- Display 8 or 16 zeros depending on asm.bits
- Added r_str_filter () to filter nonprintable chars
--HG--
rename : libr/search/stripstr.c => libr/search/strings.c
* Added 'dsl' command to step until next meta information
line is reached.
* Display file:line with context 5 with 'CL' command
- Fix r_file_slurp_line
* Added 'dcu' command to continue until an address
- bp,dc,bp-
* Added dbg.swstep to configure stepping debugger algorithm
* Add file.type. fixes warning. Defined by rabin2
* Load rabin2 in va format when debug or va modes are enabled
* Ask to kill the child before quitting
* cmd_quit is no longer calling 'exit'.
- Returns R_CORE_CMD_EXIT (-2)
- Return value can be captured at core->num.value
* Implement native kill as a debugger callback
* cmd.visual is now cmd.vprompt
* Add r_debug_reg_{get|set}
- Handle register name aliases
- Works only with ut64 type
* 'dr:eax' is now 'dr?eax'
* Lot of random syntax cleanups
- Uses the mercurial's C algorithm for delta diffing
- Remove r_diff_lines .. do we need a line-level diffing tool?
- Remove -l flag from radiff2
* Rename RIo to RIO
* Added r_reg_arena_new () to simplify arena creation
- Some sanity fixes in r_reg arena.c
* Add -C in rasm2 to output in C string format
* Initial working implementation of r_debug_execute to inject code
in child process and restore memory and registers
- Returns %a0 register value in ut64
* Added 'c' command to r_core - to compare -- just dummy
- Will use r_diff
- if rdiff callback returns NULL, we must stop scanning
- old r_diff_buffers_delta is now named buffers_radiff
- Added test files in diff/t/{file1,file2}
* Added doc/plugins documentation file
* Fix ${EXT_SO} in bin/p and asm/p (dejavu?)
* Added dummy asm_gas r_asm plugin
* Various random syntax fixes
* Rename 'dbg.ptrace' to 'dbg.native'
* Added r_debug_io_bind () to sync dbg and bp io_bind
* r_debug_map_list is now in a nicer format
* Append ${EXT_EXE} in diff/t
* Add missing util/log.c and vapi/r_line.vapi
--HG--
rename : libr/debug/p/debug_ptrace.c => libr/debug/p/debug_native.c
rename : libr/debug/p/ptrace.mk => libr/debug/p/native.mk
- Little integration from r_core_cmd (dm show maps)
- Uses RList. Allows user and system defined maps
- Added backend implementation for BSD and Linux
- mem.c -> map.c
* Fix some more random warnings
- Rename rList into RList .. as it should be
- Added r_list_unlink method
* Rename MALLOC_STRUCT as R_NEW ..shorter and smarter
- Needs propagation
--HG--
rename : libr/debug/mem.c => libr/debug/map.c
- asm.arm plugin is now embedded into r_asm as static plugin
* Added register alias names for r_reg
- Add register names for x86/32/64/arm
- pc, sp, bp, a0, a1, a2, a3
* Do not build lua5.1 if no lib found
* Enable cfg.ffio in debug mode
* Some code simplification in r_asm
- Fix a negative offset bug in elf on ARM binaries
* Out of file reads (padding) filled by 0xff
* Added r_sys_cmd () to wrap r_system()
* Fix debug registers command to display segment and flag registers
- Some draft changes in r_debug (signal handling and backtrace)
* Fix warnings in r_line
* Many more indentation fixes
- Added st32 and st8 basic types
- Fixes ruby warnings
- Follow java syntax conventions
- Helped to identify and fix bugs in many vapis
- Sync swig examples
- Add test-r_core.rb (ruby test for RCore)
* Some work in r_cons, some refactoring and cleanup
- scr.html is now working again
- w32 cons support should work now
- Rename r_cons_get_columns -> r_cons_get_size()
- But it needs more work
* Typedef all r_range, r_parse and r_anal structs
- Add missing r_lib.pc in configure.acr
* 'make' clean now removes the libr* in swig/${LANG}/
without PIC code (only static libraries, and link binaries)
- Fix linking order dependencies
* Fix some missing EXT_EXE
* Add some definitions to make debug_ptrace register work
on Solaris and *BSD (no windows yet)
- Some fixes for mips, x86, x86-64, arm and powerpc
* Initial import of rsc2
- Added intel2att rsc2 sample script
- Many API rethink for the r_bp/r_reg/r_debug bizarre triangle love
- Support for recoil for software breakpoints
- Some debugging printfs.. next step, hardware and mmu breakpoints
* r_bp_restore is now used correctly from r_debug
- sw bps are written when returning to proces and erased when back to dbg
* Fix build of bp plugins on w32/osx
* Add support to 'repeat' commands from r_core
- 3ds ; same as 'ds&&ds&&ds' ; perform 3 steps
* Fix a memory leak in rBreakpointItem constructor
* Fix some possible segfaults in r_debug
* Fix double definition cause segfault in r_reg for r_reg_types array
* Fix rLibrary/r_lib typedef class name (fixes valaswig compilation)
* Implement write register support in debug.ptrace
- Added many new commands related to registers to r_core
- Allow to set register values
- List register types
- Display register values by type
- Get value (f cureip @ `dr:eip`)
- Added continue with signal method to r_debug API
- drp : display register profiles
- drp [file] : load register profile
- Fixes in r_reg, r_io vapi and test program
with .dll and .exe for w32
* Do not build libr.${LIB_AR} by default (problematic in some platforms)
* Lot of more fixes for building on w32 - Yeah i got the first build done!
- Check radare.org/get/radare2-w32*
- So many things are still broken for windows
- Fixes some recursive and missing dependencies
- LINK and LDFLAGS must be after $OBJ
* Some random warning fixups
* extern plugins defined in handle.c for asm, bin, .. cleaner
* RAPIfy the r_bininfo
* Initial implementation of Rarray Iterator
- Needs some tuning in core Vala..but it is ok for demos
- r_bin API is now using the Rarray iterator
- Added Vala test program for it
* Fix build of some test programs
* Added r_diff and r_bininfo VAPI files
- The APIs are inconsistent and untested. Proposals welcome
- Fix possible overflow in r_bininfo
* Initial implementation of pool.c
- Implements Memory.Pool class (Extracted from 'alt')
- Added test program
* Make radare2 debugger interact with r_reg
- Register profile is now provided by the r_debug plugin
- |reg and dr works fine now
- Fix reg_sync and reg_read for dbg_ptrace
* Clean some warnings
* Fix build
- Perform statistics about XXX and TODOs
* Change signature of r_debug_mmu_
* Added io->cached_reads
* RAPIfy the r_lang
* Reviewing of the r_lib API
- Write the vapi file
- Check for null mallocs
* Fix build of r_reg
- Plugins should be singletons across object instances
* Added hard/soft initializer for r_crypto
- Needed for the as_new()
- Added stupid vala example for r_crypto vapi
* Implement r_debug->mmu methods
- radare2 debugger is now broken
- r_reg has grown a bit more
- Better separation of debugger elements
* r_bp now has r_bp_add_hw and r_bp_add_sw() calls
- Added minimal support for breakpoint handlers
- Import th0rpe's watchpoint expression parser engine
* iob moved from r_debug to r_bp
* Arch types has been moved into r_asm
- Soft compile time dependency
* Update pkg-config .pc files
- Fix warnings in many places
* R_APIfication of r_anal
- Fix probable segfault in x86_bea
* Use macros to define plugin names
* Fix build of radare2, rasign2 and debug/t/main
* Call sundo_push() when io_seek
* Added toggles for seek and write undo levels
--HG--
rename : libr/sign/t/rasign.c => libr/sign/t/rasign2.c
- r_debug_ptrace is now static by default
* Some code cleanup and warnings removal
* Added hg-utils.mk and MKPLUGINS directive in user-config
* Initial implementation of dbg_gdb r_debug plugin
- Import ERESI's libgdbwrap from r1
* Add some missing files (asm/p/fastcall_mips.h, core/t/ragrep2.c)
* Added r_str_bool helper to get "true"/"false" from int
- r_debug_reg and r_debug_regset
- Handles dbg->newstate to force register sync
- Only dbg.reg.read() for x86-32 and 64
* Added dummy copy of manpages (from old radare1)
* Added $s for filesize (like in r1)
* Added ? $? for help and ?$ alias
* Add r_bp as dependency for r_core in test programs (fix build)
* Use limits.h in io-ptrace to determine x86-32 or 64
* Fix a building bug in rules.mk
* Fix div0 bug in r_bp_getbytes()
* Show 'enabled' / 'disabled' attribute of breakpoints
* Implement dbg_read and dbg_write callbacks for r_debug
- Added r_debug_set_io() to setup the IO for r_debug
* 'db' command can now add and remove breakpoints
- Not yet written into memory. only managed
- Integrated with r_debug module
- Hardware breakpoints will be handled by the debug backend
- Breakpoints support software/hardware, lil/big endian, trace, enable/disable
- Plugin infrastructure adding software breakpoint templates
- Added x86 and arm software breakpoint plugins
* Some work on the 'db' command to manage debugger breakpoint
* Added empty dH to transplant process between debugger backends