397 Commits

Author SHA1 Message Date
Eloi Sanfelix
9c3538308a Fixed reg_profile in anal_sh and added sh's profile to debug_gdb. 2011-05-07 19:23:39 +02:00
pancake
b910c54714 * Fix getreg for r_debug_gdb on x86 (add profile)
* Add bits and arch fields in RAnalPlugin struct
  - mrproper is required
2011-05-06 19:56:16 +02:00
pancake
e83156f06a * Apply rvalles patch for AVR code analysis
- Adds support for absolute JMP and CALL instructions
2011-05-06 10:01:48 +02:00
pancake
3f2677ab7f * Added initial untested support for native gdb debugger mode
- 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'
2011-05-06 00:59:10 +02:00
pancake
bae9673ac4 * Implement basic code analysis support for AVR
- Thanks Roc Vallès for the contrib!
* Fix AVR disassembler branch output
2011-05-05 23:33:58 +02:00
earada
ac786a03dd * Add OSX x64 Reverse TCP Shellcode
* Fix rasc2 enviroment vars
* Change some files license from GPL3 to LGPL
* Fix some typos
2011-05-03 23:43:16 +02:00
pancake
17189725d2 * Fix other use-after-free bugs related to r_list_unlink
- Use r_list_delete instead of r_list_unlink in various places
    - Some operations are now a bit faster
2011-04-29 13:55:27 +02:00
pancake
020dd97a8b * Fix many segfaults discovered in OpenBSD
* Fix segfaults caused by read buffer overflow in x86im
  - use a 16 byte delta buffer in function and basic block analysis
* Fix r_list_delete segfault caused by an use-after-free bug
  - Thanks Edd Barrett for notifying :)
* Clean up many warnings reported by OpenBSD's gcc
* Reduce analysis depth to 50
* Fix OpenBSD syscall definitions and fix generator python script
2011-04-03 02:43:15 +02:00
pancake
a6a92aa73e * Honor --without-debugger
* Fix linking of r_anal_x86_simple plugin
* Fix some uninitialized vars reported by debian build system
2011-04-07 23:15:58 +02:00
pancake
94e316b6fe * Do not build r_db
* Group bfd getl{16,32} helpers
  - fix build of sh-dis plugin
* Fix lot of warnings
* Port rap to use RSocket
2011-04-06 09:29:25 +02:00
Eloi Sanfelix
c01f3070b6 Changes to SH4 anal plugin
- Added static keywords
  - Fixed JMP/CALL instructions
2011-03-29 22:25:39 +02:00
Eloi Sanfelix
7c04f11226 Initial SH4 support 2011-03-29 14:55:41 +02:00
pancake
6c822b9090 * Added 'make purge'
* Added pipelined RAnalOp
  - Added r_anal_(op|value)_copy
  - Some minor review of RFS api
2011-03-28 10:24:01 +02:00
pancake
daff6aff5d * Fix set_reg_profile callback in r_anal_arm
* Fix dupness issue between RDebug and RAnal sharing RReg
  - Move reg_profile string into inner RReg
* Remove vm.arch setup in rasm2 -ri
2011-03-24 00:54:09 +01:00
pancake
7dd8619477 * Add patch from @capi_x fixing segfault when refering an invalid fun var
* Do not override RANLIB with mingw one by default
2011-03-10 14:14:22 +01:00
Nibble
2db84a2e46 * Fix build when compiling in a clean system (thx @esanfelix!) 2011-03-07 20:50:10 +01:00
Nibble
864fd7aa7e * Move gdiff stuff to r_anal_diff
* Make r_anal_diff customizable by plugins
* Refactor r_anal and redesign API
* Add dummy methods for security patches evaluation in r_anal_diff
* Add functions:
  - r_anal_diff_fingerprint_bb
  - r_anal_diff_fingerprint_fcn
  - r_anal_diff_bb
  - r_anal_diff_fcn
  - r_anal_diff_eval
2011-03-06 15:21:13 +01:00
pancake
3f56ce5a95 * Move RMeta inside RAnal
- Get out of RCore! - rebuild required
* Fix cast after scaling entropy (Thanks Glyn)
* Fix indentation of function/nonfunction code
* Add 'f' and 'F' keys in visual mode to seek next/prev
  - between functions, flags and search hits
  - Use 'e scr.fkey' to configure the mode
* Fix prompt in visual mode for ':' key
2011-03-02 00:02:50 +01:00
Nibble
2afe4c2471 * Remove remaining test app for r_meta and fix build
* Update r_anal vapi
2011-03-01 19:27:04 +01:00
Nibble
67e20135cc * Add support for more opcodes in anal_x86
- lea, leave...
* Update asm.decode with these changes
* Add var $o for core->io->offset
* Fix "function"|"loc" comments in disasm
* Fix p%
2011-03-01 19:16:29 +01:00
pancake
80a5cb0651 * Remove all references to r_meta as a separated library
- Initial merge into r_anal
  - Prefix R_META_* as R_META_TYPE_
  - Deprecate folder type and rename Cm->Cf (like in p cmd)
2011-03-01 19:06:22 +01:00
Nibble
1535b4c5c1 * Don't flag imports/symbols twice (also for functions)
* Remove unnecessary calls to r_flag_space_set()
* Show calls nicer in decode mode
2011-02-28 17:27:08 +01:00
pancake
6d5b22c29c * Fix entropy range 0-8 (Thanks Glyn)
- Use 0-255 in pZ
* Fix symstall for pkgconfig
2011-02-28 13:29:04 +01:00
Nibble
499576407e * Show deltas in hex in decode mode 2011-02-28 13:21:38 +01:00
Nibble
c712fd87f6 * Show conditions in decode mode
* Fix bug with imm=0 in r_anal_value_to_string()
* Add 32bits regs to the anal_x86 profile
* Add r_anal_bb_from_offset()
2011-02-28 13:07:41 +01:00
pancake
077ff4c36e * Some fixes in r_anal_reflines
* Implement r_cons->teefile (e scr.tee)
* Use filtered refline for comments and flags prefixes
* Many visual fixes in functions and reflines in 'pd'
2011-02-28 00:03:26 +01:00
Nibble
268d6560ad * Complete analysis for more opcodes in anal_x86
* Decode more opcodes in r_anal_op_to_string
* Complete r_anal_value_to_string()
  - Output imm values
  - Fix segfault
* Remove dupped line from x86.mk
* Remove ref to "dummy plugin" from r_asm.h
2011-02-27 16:17:05 +01:00
Nibble
77433dba56 * Fix segfault with asm.decode = true
* Add push/pop to decode
* Minor fixups in anal_x86
2011-02-27 03:39:27 +01:00
Nibble
91addb3791 * Little refactoring of 'Cv'
* Show 'unk' instead of 0xff...ff for unkwnown calls/args
2011-02-26 14:58:54 +01:00
Nibble
332524e120 * Rename r_anal_aop_* to r_anal_op_*
--HG--
rename : libr/anal/aop.c => libr/anal/op.c
2011-02-24 14:06:49 +01:00
earada
4c72f5f082 * Zoom out in cursor mode
* Fix dalvik goto opcodes
* Initial import of the dalvik anal plugin
* Fix 'ms' mount a non-exist root
2011-02-23 03:01:26 +01:00
Nibble
9646275d38 * Some fixes on resolution of fcns+args 2011-02-18 18:13:26 +01:00
Nibble
340ccc481b * Add more vm features to r_anal
* Fix syscall recognition
2011-02-18 13:08:09 +01:00
Nibble
5c1d473b69 * Fix segfault in r_list_destroy()
* Fix Build
2011-02-18 10:58:17 +01:00
pancake
06f91e2a28 * Code cleanup in r_anal (-30LOC) 2011-02-18 10:08:24 +01:00
pancake
f950dcb33c * Add RIOMap in r_core_file_open
- RCore.file_open() now accepts one more arg for offset
  - Fix RIO api issues related to RIOMap and opening multiple files
  - Fix infinite loop and simplify design
  - Added test case to ensure it does not breaks
* Fix build of r_lang in OSX (thanks @capri_x)
* Remove debugging printfs
* io.ffio is now true by default
2011-02-12 01:52:41 +01:00
Nibble
2a477ce8b7 * More refactoring of r_core_anal_*
- Remove ugly pbb
* Add support for global diff graphs
* Fix global graphs
2011-02-11 16:56:38 +01:00
Nibble
f3f094117a * Huge refactoring of r_anal code and API 2011-02-11 11:22:43 +01:00
Nibble
fc4198e97d * Implement in x86im test and int opcodes
* Remove hacky code
2011-02-08 13:57:48 +01:00
Nibble
ead4e9502f * Simplify type assignment in r_anal
* Include fcn type in 'rabin2 -r' output
2011-02-08 00:15:12 +01:00
Nibble
cc9cefa74e * Some refactoring of r_anal
- Add fcn types for syms and imports
  - Filter bindiff matches by type (speed up analysis)
  - Assign the right fcn type in bin_load
* Fix segfault in r_anal
  - Solve bug with unknown opcodes + graph splitting
* Update more vapi's
2011-02-07 17:43:50 +01:00
pancake
7e22c00602 * Hide verbose messages of "unknown cond, opcode" in anal
- #define VERBOSE in bb.c and fcn.c
* Fix memory leak in cons_grep
  - Fix grepping for null strings
  - Fixes count of lines x~?
2011-02-05 02:55:50 +01:00
Nibble
0906e809fe * Remove all dummy plugins (speed up build) 2011-02-04 14:20:30 +01:00
Nibble
1d83a7ba25 * Some optimizations in r_anal
- bb's are included in fcn struct
  - analyze bb's and fcn's all together
* Update some vapis
* Fix build
2011-02-04 14:03:59 +01:00
pancake
9c8aa28a9a * Some better help messages
* Added asm.lineswidth (fixed width for reflines)
* Added 'aoe' stub command
2011-02-03 09:31:50 +01:00
pancake
fdd8ed6bc1 * Use r_reg API from r_anal in order to retrieve info for r_syscall
* Hacky support for software interrupts in anal.x86im plugin
* Added 'B' key to toggle automatic blocksize
2011-02-03 00:57:29 +01:00
pancake
1f1a36c817 * Initial implementation of the r_anal_aop_execute api
- It's like r_vm, but using r_anal
  - r_vm is going to be deprecated
* Added r_mem_set_num()
* Remove deprecated asm/t/fastcall example
* Fix warnings in r_syscall_regs
  - Integrated with r_syscall_use()
  - Fix r_syscall_reg() out of bound bug

--HG--
rename : libr/syscall/regs.c => libr/syscall/fastcall.h
2011-02-03 00:20:39 +01:00
pancake
1f953579ea * Fix build 2011-02-02 13:23:44 +01:00
pancake
965a577af2 * More work on the r_anal/r_syscall refactoring for calling conventions 2011-02-02 13:05:48 +01:00
pancake
2c3edbbbf5 * Add missing cc.c 2011-01-26 22:01:38 +01:00