Commit Graph

91 Commits

Author SHA1 Message Date
pancake
dac5cf1b08 * Apply patching fixing various bugs on w32
- Some segfaults resolved and bugs identified
  - Thanks @mrgadix :)
2010-10-12 01:18:17 +02:00
Nibble
f29444ab20 * r_core
- Add var asm.functions to show/hide function analysis in disasm
  - Take into account asm.{xrefs, functions} in disasm
* vapi's
  - Add bin to RCore in r_core.vapi
2010-10-09 19:13:10 +02:00
pancake
ee39ba239a * Add 'FS' #define for w32 and *nix
* Add support for thumb mode ARM disassembler
  - Workaround a warning in r_vm for arm-16
* More work on drx.c, but still not integrated
2010-10-04 00:42:11 +02:00
Nibble
eb811bbf08 * r_core
- Deprecate ah and add anal.plugin
  - e anal.plugin=? list available plugins
  - Add the command 'ar' to handle refs/xrefs
  - Remove old CX and Cx stuff
  - Remove afg (done by af)
* r_anal (& r_meta)
  - Remove refs/xrefs stuff from r_meta
  - Handle refs from r_anal
  - Add r_anal_ref_{add, del}
* rabin2
  - Add 'e anal.plugin' to the output of rabin2 -Ir
2010-09-28 13:58:03 +02:00
pancake
022e6c96f0 * Add pt command for print times (Thanks @earada for the patch)
- pt prints times in unix format
  - ptd prints times in dos format
  - ptn prints times in ntfs format
* Add cfg.datefmt in global config to define the format output of 'pt'
2010-09-23 12:59:54 +02:00
pancake
1b1599c6df * Support for some push/pop arm opcodes with 2 regs
* More fixes for rarc2 on ARM
* Implement .fill directive in r_asm
* Added asm.profile in r_core
* Added r_str_bits as a helper to display register flags
2010-09-14 11:22:31 +02:00
pancake
eb0ce8208d * Initial implementation of '=' command
- Deprecate the useless '|' one
* Added rap.loop config var to wait for connections in loop
* All data operations in rap are now bounded to RMT_MAX
* Protocol implementation compatible with r1
  - Many endian hacks.. must take care of
* Use blocking operations for reading network packets
2010-08-23 06:39:23 +02:00
pancake
8f6bdc3560 * Add 'avrr' and 'avrc' commands to setup vm regs
* Many minor random fixes
* RVm api has an own architecture description file
  - r_vm_set_arch(vm, arch, bits);
  - add x86-16, x86-32, x86-64, arm-32
2010-08-23 00:48:44 +02:00
Nibble
4b052b53ee * r_core
- Add cfg var anal.ptrdepth to define analysis depth for indirect references
  - Add support for indirect references to /a (needs more testing)
* r_io
  - Remove perror msg from r_io_read_i()
* r_anal
  - Minor fixups in arm and x86 plugins
2010-08-19 02:30:12 +02:00
Nibble
c1c8c32284 * r_core
- Fix 'S' and 'S='
* r_io
  - Add field 'debug' to r_io_t
  - More refactoring of io.va code
2010-08-16 01:50:01 +02:00
Nibble
02251522ea * r_core
- Add cmd '/c' for searching asm code
  - Add config var search.asmstr
* build
  - Minor fixups in "make mrproper"
2010-08-11 17:48:02 +02:00
Nibble
db75fd66ce * Fix 'asm.syntax' bug 2010-07-12 18:15:53 +02:00
pancake
cc35fbf14f * Added file.desc
* Cx/CX is not working again, needs more love
* Implemented 'pdf' .. needs review
2010-06-30 11:59:52 +02:00
pancake
5f10d6ba64 * r2 -n does not load rabin2 information
* Implemented search.align
  - Affects RPrint->addrmod and RSearch->align
* Use r_search_reset() instead of r_search_new()
* typedef RConfigCallback
* r_sys_bt renamed to r_sys_backtrace
2010-06-30 02:30:07 +02:00
pancake
80fc77a8b4 * Fix w32dist segfault in plugin.dll
* Fix read registers in w32 debugger
  - seek do not seems to work
2010-06-28 02:12:35 +02:00
pancake
e14bbdf6e2 * Fix ^w in r_line
* Initial implementation of /a command
  - Search for code/data references using code analysis
* Add search.from and search.to eval vars and honor them in '/' command
2010-06-25 00:21:22 +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
255504b79c * Added initial aop_to_string() method for RAnal
- accessible via asm.decode
* Add more 'Vd' keys (data, code, string, ..)
2010-06-21 11:55:48 +02:00
pancake
23ad3d2415 * Added asm.linescall=false (default)
- Implemented in anal_reflines to skip call analysis for lines
* Set dbg.trace=true by default
* Display trace count and times in 'pd' (asm.trace)
  - counter starts as 1, not 0 :)
* Added 'absolute' variable in RAnalValue (not yet used..)
  - Defines the sign of the value (needs arch-dependent code)
* Sync TODO files
2010-06-17 02:22:50 +02:00
pancake
e36ef11025 * Initial working basic block conditional decompilation
- Only 'test' opcode for x86 is currently supported (just for testing)
  - analysis backend generates RAnalValue's for each argument
  - compiles a cmp+cjmp into a RAnalCond class
  - de/serializes the RAnalCond into an evaluable string
  - Make anal api more stable
* Fix a memory leak in anal_bb
* Reassign anal->reg into dbg->reg
  - Replicate dbg->reg into dbg->anal->reg
  - Such nasty cascade assignation..
2010-06-16 21:44:19 +02:00
pancake
b7c554b24a * Some linkage fixes for binr/
* Added 'at' command (not yet implemented at all)
  - Some refactoring in r_debug_trace code
  - Remove deprecated r_trace.h
2010-06-04 00:56:44 +02:00
Nibble
097edd11c6 * Add support for non-splitted graphs
* Add config var anal.split
* Fix segfault in r_anal & r_big
* Fix r_anal split algorithm
* Minor fixup in bb type assignment
* Fix partial graphs generation
2010-06-02 19:17:47 +02:00
Nibble
5c35f6e359 * Rename {r_*_handle_t, R*Handle} to {r_*_plugin_t, R*Plugin} 2010-05-26 01:42:22 +02:00
pancake
a2ede77d20 * hash md5 and sha1 by default
* add RCore.io in vapi
* Add RIO.va in vapi
* Fix collision of VarType in RAnal
2010-05-25 01:42:57 +02:00
pancake
497cf959a7 * Added r_core_project_info
- Implemented 'Ps, Po and Pi' commands
  - Allow to open a project file without givin the path to file
  - Store and check changes in file.sha1 and file.path
* Do not load libraries twice in r_core
* Implement -r flag to rahash2 to export data in radare commands
  - Sync help message
2010-05-24 18:51:01 +02:00
pancake
7902cb417f * Initial import of r_big - big integer api
* Handle cfg.bigendian in core->assembler
  - fixes powerpc big endian disassembler
2010-05-24 01:31:22 +02:00
pancake
1940120f0a * Added fast keys to seek on jumps or calls '1'-'9'
* More seek undo pushes in visual mode
* Added 'd' key in visual mode 'df' defines a function
* Huge repointerization in RCore
* Fix r_num_new() constructor
2010-05-20 00:59:42 +02:00
pancake
b8e98f3a00 * Add bb_list() method to RAnalFcn class
* Handle function boundaries in 'pd'
* Reset stack_ptr=0 when leaving a function body
* Fix 'asm.bytes=false' (display flags as newlines)
* Fix 's+' and 's-' (seek redo, seek undo)
  - Bindied in visual mode as 'u' and 'U' keys
  - Added 's*' command to list seeking history
* Add dummy file.md5 eval var
  - TODO: must be done by rabin2 and checked by project file
2010-05-19 02:39:01 +02:00
Nibble
22a6063852 * r_core
- Add config var asm.stackptr
  - Print the size of stack frame in disasm view
2010-05-18 19:38:47 +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
pancake
9add8fe3d9 * Add 'dpf' command to set pid=core.file.fd
* When cfg.debug=true use dbg.backend ("native")
  and select core.file.fd.. this simplifies use
2010-04-11 01:46:07 +02:00
pancake
f5bf177c60 * Implement r_asm_modify
- wA command is used to Alter opcodes (move to r_anal?)
  - allows to modify various opcode instructions
* Add search.distance config variable
2010-04-09 00:52:38 +02:00
pancake
3be83621cb * Initial implementation of -p flag to handle projects
- ~/.radare2/rdb
  - Added r_sys_mkdir()
* Remove the command length limitation in r_core_cmd_file
2010-03-31 00:03:59 +02:00
pancake
49edd0649c * Implement 'wc' command to list, commit and reset cache changes
- Added doc/iocache with a usage session of 'wc' command
  - Needs io.cache=true
  - This is the replacement of the 'undo' feature of radare1
  - Removed cache-related code from the r_vm module
2010-03-30 23:12:19 +02:00
pancake
b6a1d6e865 * Added support for cached IO
- e io.cache=true
  - Fixes support for overlapped changes
  - Implement cache_list
  - We can merge it to remove vm and undo writes with this
* Some code cleanup in vm
* Fix division by 0 bug notified by @ash
* Some random makefile cleanup
2010-03-30 17:37:15 +02:00
pancake
3027c4b18b * Added scr.prompt that can be disabled with -v flag in r2
* Use r_str_home instead of handcrafted sprintf
* Fix infinite loop when stdin eof occurs
2010-03-24 11:35:41 +01:00
pancake
4f3c5f1ea5 * Added 'asm.middle' disabled by default
- Enables the support to bypass anti-disassebly tricks
* Fix write support for non-plugin IO backends
  - Fix read of non-full blocks
2010-03-23 23:26:59 +01:00
Nibble
df128e027f * Minor fixup O:) 2010-03-21 11:09:29 +01:00
Nibble
633387c2a4 * Remove rpathdel call from build
* Set va = 0 in debug mode
2010-03-21 07:40:31 +01:00
pancake
3b326d6a41 * Cleaner disassembly output with asm.bytes and
asm.nbytes options
* Sort config keys
2010-03-19 04:27:11 +01:00
Nibble
21868d3b6c * r_parse & r_core
- Rename asm.symsreplace to asm.filter
* r_core
  - Add command 'aga' to output address-graphs
* build
  - Strip binary rpath before install
2010-03-19 04:32:42 +01:00
pancake
0266e3338e * Use radix 10 in ollyasm like in intel syntax
* Add asm.nbytes to limit number of bytes to be displayed
2010-03-19 03:06:53 +01: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
b8c3a23892 * Rename dbg.dwarf into asm.dwarf
- Display source lines at right of opcodes
* Rename asm.reflines* into asm.lines*
  - asm.lineswide = false by default
2010-03-19 01:45:52 +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
7572171516 * Add dbg.stopthreads configuration variable
- Stop all threads by default when a breakpoint is handled
2010-03-11 00:51:32 +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
Nibble
420acc3ff3 * Add dummy local-var analysis stuff to r_anal
* Check return value of r_anal_set_bits in asm.bits callback
2010-03-07 14:00:26 +01:00
Nibble
bf2a8120ea * r_core
- Set r_anal bits in asm.bits callback
* r_core_anal
  - Improve xref resolution
* r_anal
  - Fix infinite loops in r_anal_bb and r_anal_fcn
  - Some code cleanup in bea plugin
  - More improvements in code analysis
* r_bin
  - Mark symbols as functions in r_bin_pe
* rabin2
  - Print 'af+' commands and 'fcn.' flags for all functions
    in -rsi output
2010-03-05 18:55:39 +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