Commit graph

44 commits

Author SHA1 Message Date
pancake
16ddff4eb9 More work on ESIL, and implement r2 -Desil .. 2013-05-20 03:00:49 +02:00
pancake
8879796427 Fix 'dr*' command 2013-01-10 18:20:36 +01:00
pancake
f4d743d58c Update LungoJS to 2.1git 2012-12-23 18:34:30 +01:00
pancake
e5799fb7a2 Fix build on linux-mipsel64
- debugger backend now sets dbg.swstep
 - define linux-mips64 register profile
 - fix 32/64 annoyance in debugger
 - fix register read under some situations
2012-07-05 16:02:12 +00:00
pancake
a1a1519b92 * implement osx-x86-32/64 native cross debugging
* Add p= command to show the statistics graph
* Rename Vw to Vi (write->insert)
* Add dummy base85.c
* Various binding fixes (add test3.js)
* Fix socket.vala
2012-06-07 03:41:21 +02:00
pancake
590a069980 * Fix dr?pc
* Fix r_anal and r_magic vapis (thanks xvilka)
* Add some fortunes
* Fix test_sys
2012-02-05 23:47:16 +01:00
pancake
6af56de671 * Handle ^C in 'aa' command
* Add definitions for Color_INVERT and _RESET
2011-12-05 09:55:44 +01:00
pancake
2db05920e4 * Fix segfault in r_io when io->va = 0
* Fix overflow in r_cons
* Implement dtg with proper dot format output
* Use "f name 1 off" instead of "f name @ off" in dr*
2011-11-25 09:40:28 +01:00
pancake
a43068bde0 * brainfuck debugger is finally usable
- 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
2011-10-09 04:15:32 +02:00
pancake
bed664eb93 * Fix newline in dr= command
- Set 'ss' register as a segment type in OpenBSD/x86_64
2011-05-25 09:56:29 +02:00
pancake
fbe7466a22 * Fix r_str_bits()
- eflags/rflags now works .. but needs some testing
2011-06-21 00:33:29 +02:00
pancake
bf95651e69 * Fix DEX parsing segfault
* Fix possible segfault on newer glibc
* Fix some indentations and Visual hints
2011-05-24 15:25:52 +02:00
pancake
3ab9e61c22 * Do not show registers if sync fails
* More work on the io refactoring
2011-01-21 09:17:14 +01:00
pancake
4db5cded34 * Fix w32dist find command
* 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
2010-11-17 00:56:48 +01:00
pancake
124786c1ac * Added 'drd' command to show only modified regs
* Added r_list_foreach_prev()
* Add RSyscallPort to handle Hardware I/O ports
* Remove libr/TODO and refactor /TODO
* Link with 'ld' in rarc2-tool for nasm
2010-09-24 16:45:56 +02:00
pancake
84dd63b743 * Add 'bf' command to change block size based on flag size
- Added help in 'b?'
* Added support for bit-collection registers
  - eflags is now displayed as a string
  - debug/p/debug_native.c needs a correct x86 flag string
* Fix segfault when listing empty register sets
2010-09-24 04:09:39 +02:00
pancake
46aa9f5f7e * Implement stacked register storage
- Add support for register diffing
  - Colorize modified registers are step/cont
  - Add command 'dro' to show old register values
  - requires make clean
2010-09-23 20:42:35 +02:00
pancake
b339189b5f * Added r_reg_arena_set and r_reg_cmp in order to implement regdiffing
* Added R_DBG_REASON enums
2010-09-20 14:02:45 +02:00
pancake
1356a9bdd1 * Highlight destination offset when cursor on jmp/call in visual
* 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
2010-09-18 02:51:17 +02:00
pancake
f641df833b * Initial working version of the MIPS code analysis
- imported from r1
* Implement the syscall table for linux-mips
* Do not use tabs in the mips disassembler
* Fix other uninitialized state segfaults in r_debug
2010-06-23 13:43:08 +02:00
pancake
5748a66278 * Fix segfault in stepover in non-debugger mode
* 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)
2010-06-22 20:27:14 +02:00
pancake
34435b1285 * Mental note: %lld/%llx does not exist on windows
- Use the macro PFMT64{xod} in case
2010-04-14 13:02:23 +02:00
Nibble
456976cc40 * rabin2
- Add flag '-m [addr]' to show source line at addr
* r_core
  - Add env 'asm.symreplace' to replace offset by flag name
* r_debug
  - Fix segmentation fault
* r_parse
  - Add r_parse_symreplace to replace offset by its flag name
2010-03-19 02:49:30 +01:00
pancake
3da650d4b1 * Write and install manpages
* 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
2010-03-12 18:46:11 +01:00
pancake
1341620c73 * Rename cons/filter.c to grep.c
- Some random changes.. with no success
  - Grepping console buffer is not working
* Cleanup the 'ds' and 'dp' commands
  - Implement 'dpa' to attach
  - Allow to list childrens of pid
  - Also list all attachable pids
* Fix segfault by leaking.. needs some cleanup
* Fix r_debug_reg_list (NULL) issue

--HG--
rename : libr/cons/filter.c => libr/cons/grep.c
2010-03-08 00:18:58 +01:00
pancake
13774c2bd5 * More fixes for busybox tr
* Initial blind implementation of w32 debugger
  - r_cons now handles ^C in w32 console
  - not yet tested, just blind code typing
* Implement 'dp' command to list processes (pids)
  - Implemented RDebugPid stuff
  - dp=394 # is used to attach
  - dp 0 # to list all attachable pids
  - dp # list current used pid
* Added not-yet-implemented threads() callback in RDebugHandle
* Fix r_list_free callback handler
* Fix again the 'dr=' command :/
* Cleanup the help of 'd?' and 'dm', 'dp'
* Use -O2 by default ?
2010-03-05 01:49:12 +01:00
pancake/fluendo
d431b3721b * Fix build of debugger on non-x86-32 (oops)
* Fix difference between EOL and EOF (-1, -2) in dietline
  - Fixes prompt issues in r2 shell
* Display 16 0s in 64bit registers
  - Fixes dr= in 64bit debugger
  - Fix double-newline issue in dr=
2010-03-04 12:43:16 +01:00
pancake
c307258ebb * Implement 'dr=' command to print regs in columns
- Use it in visual debug mode
2010-03-04 02:11:54 +01:00
pancake
fcbcc00d1e * Huge refactoring on r_syscall
- 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
2010-03-04 01:46:25 +01:00
pancake/fluendo
4941781bd7 * Full implementation of the 64bit register profile for linux
* Simplify debugger plugin arch/bits info
* Display 64bit registers with 'dr'
  - Padding with 16 0's instead of 8
2010-03-03 14:48:17 +01:00
pancake
9c0636e5ca * Fix return value of bin_meta_elf
* 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
2010-02-28 22:58:21 +01:00
pancake/imac
edb48945b7 * Added DEFAULT_ARCH for mips and powerpc
* Refactoring in r_anal API for _aop() with addr and length
  - Added ppc code analysis plugin
  - sync in r_core
* cfg.ffio->io.ffio
* Add CMD type in r_lib
* Added SR register type
* More stuff is now working in osx-ppc debugger
* Random code cleanup
2010-02-22 04:02:13 +01:00
pancake
14f9fe8b65 * Autodetection of --with-ostype in configure.acr
- Rebuild configure script in ACR 0.8.1
* Random minor changes
2010-02-21 20:24:28 +01:00
pancake
41ba5c0104 * Add some missing ${EXT_EXE} in t/
* 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
2010-01-19 11:25:17 +01:00
pancake
8579a5b41f * Release version to 0.3
- Propagate @VERSION@ from ACR
  - All *2 apps are now supporting a -V flag to show the version
* Fix .dr* command in r_core debugger
  - dr now supports [regtype] [bitsize] arguments
  - Check dr? for help
* Added some 8, 16 bit registers to the dbg.ptrace backend
  - Just for testing :)
* Check build of the whole source tree
  - test programs are now in ${prefix}/bin/libr-test
* Fix lot of warnings and bugs
* Simplify some code
* Some rapification
* Fix segfault in r_reg related to unallocated arenas
  - New function r_reg_type_by_name() resolves string->id
* Fix help of rax2
2009-09-25 04:04:51 +02:00
pancake
5d5fec5084 * Single valadoc by default
* Added SEGment register types (r_reg+vapi)
* depgraph.pl is now generating .gml output
2009-09-21 15:39:10 +02:00
pancake
42688da6ec * Rename some handle_set into _use() new syntax
* 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
2009-09-20 02:16:14 +02:00
pancake
85dfbe5255 * Added r_reg pkgconfig file
* Some fixes in the r_reg VAPI
  - Added vala test program
* r_debug is now broken because the new r_reg
* Add r_free_internal to reduce leaks in r_reg
2009-09-20 00:28:06 +02:00
pancake
1aadbea576 * Some more random refactoring on r_debug and r_reg
* Added support for bit level hash algorithm selection
  - Integrate it with rahash2
  - Needs some cleanup of spagheti mess
  - All hash algorithms are now supported in a shot :)
  - R_APIfy r_hash
2009-09-15 00:06:37 +02:00
pancake
91ad40d663 * Major unfinished refactoring for r_debug and r_bp
- 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
2009-09-14 00:37:28 +02:00
pancake
669ce0a815 * Initial r_io_bind'ization of r_bin .. not yet working
- Meld bind.c into io.c
* Some review in many r_debug code
* Added vapi for r_debug
2009-09-10 20:51:34 +00:00
Nibble
94445e1540 * Change the name of some types
- s/u64/ut64/
  - s/u32/ut32/
  - s/u16/ut16/
  - s/u8/ut8/
2009-07-08 13:49:55 +02:00
pancake
7c27588c13 * Sync x86 code analysis fixups from r1
* Fix some segfaults on the not-yet-used dbg.reg api
* Now uses .radare2rc
* Some R_APIzation in r_debug
2009-04-16 20:49:18 +00:00
pancake
14ef1cf602 * Initial work on the register API for r_debug
- 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)
2009-04-15 11:09:36 +00:00