Commit Graph

39 Commits

Author SHA1 Message Date
Nibble
0906e809fe * Remove all dummy plugins (speed up build) 2011-02-04 14:20:30 +01:00
pancake
af7cfafc0d * Initial api for r_anal_cc (calling conventions)
- Not yet implemented, just a draft
* Added initial AVR cpu code analysis plugin
2011-01-26 21:54:39 +01:00
pancake
39f77a430f * Huge r_io refactoring
- Many things are broken in this commit
2011-01-20 22:52:16 +01:00
earada
0283c92f6e * Initial import of Dalvik (Android VM) disassemble plugin
* Change opcode buffer size to 3218 (need refactor)
2011-01-19 00:39:28 +01:00
pancake
5f925ba1f8 * Fix libr_fs on OSX, restrict FS plugins to the only ones
that compile fine everywhere. Need more work and testing
2011-01-14 20:53:36 +01:00
pancake
08e37d54ab * Added r_fs support for the following filesystems:
fat, ntfs, cpio, tar, hfs, hfsplus, udf, iso9660,
  reiserfs, ufs, ufs2, xfs and jfs
* Added vapi files for r_fs
2011-01-14 09:45:33 +01:00
pancake
ca432e3f04 * Initial import of the 'r_fs' API
- Allows to mount filesystems in virtual IO
  - Only dummy ext2 plugin ATM
  - Added 'm' command in r2 to manage mountpoints,
    list directories and retrieve files
  - Bonus: hacky version of grub/fs code to use it
    as a standalone API. Plugins will use it
  - API is quite simple and limited, read-only access
2011-01-12 00:01:06 +01:00
pancake
b53ea8bec1 * Apply @earada patch
- Fixed redundant check in r_hex_str2bin
  - Initialize fd in r_io_new
  - Added Haret IO (WinCE app) plugin
2010-12-13 10:41:28 +01:00
Nibble
71978e186f * More optimization on the analysis loop
* Add config_analsplit_callback() in anal/config.c to set RAnal->split
* Add field split to RAnal struct
  - Avoid unnecessary call during BB analysis
* Set the default anal depth to 100
* Take into account internal calls in xref analysis
* Rename anal_x86_x86im to anal_x86 and make it the default anal plugin
* Rename anal_x86 to anal_x86_simple (x86.simple)

--HG--
rename : libr/anal/p/anal_x86_x86im.c => libr/anal/p/anal_x86.c
rename : libr/anal/p/anal_x86.c => libr/anal/p/anal_x86_simple.c
rename : libr/anal/p/x86_x86im.mk => libr/anal/p/x86.mk
rename : libr/anal/p/x86.mk => libr/anal/p/x86_simple.mk
2010-11-20 16:47:15 +01:00
pancake
b21584e06c * Initial import of the thumb arm disassembler
- based in C++ code of KennyTM in networkpx.googlecode.com
  - Added 'armthumb' r_asm plugin (16 bit mode)
2010-10-06 00:35:33 +02:00
Nibble
987d8599f9 * Initial implementation of the RBin extractor for dyld cache
* Add bin_xtr_dyldcache to plugins.def.cfg
* Show bin name in the output of 'rabin2 -A'
* Minor fix in rabin_list_archs() in rabin2
2010-10-01 04:26:52 +02:00
Nibble
793dae395d * Massive refactoring of r_bin
- Add support for fatbins (currently only fatmach0)
  - Minimize creation of r_buffers
* rabin2
  - Add flag -A for listing archs
  - Add flags -a and -B for selecting arch
  - In the next commit -A and -B will be removed and -a will work
    with the following format:
    [-a arch bits] for selecting arch
	[-a] for listing them

--HG--
rename : libr/bin/p/bin_fatmach0.c => libr/bin/p/bin_xtr_fatmach0.c
2010-09-24 21:23:13 +02:00
pancake
4d50a86855 * Initial implementation of the rap:// IO plugin
- RMT packet descriptions are in r_io
  - io.rap plugin is now compiled by default.
    $ rm -f plugins.cfg
    $ ./configure-plugins
* Some syntax fixes in r_vm
* RCore.r_core_server() method uses r_io_is_listener() to wait for connections
* Some minor fixes in r_socket
  - Add r_socket_read_block() fixes SIGPIPE and network issues
2010-08-22 21:42:08 +02:00
Nibble
bb8cfd866d * r_bin
- Add function r_bin_extract()
  - Add lib r_bin_fatmach0 into format/mach0/
  - Complete mach0_specs with fat mach-o stuff
  - Add plugin bin_fatmach0
  - Initial import of mach-ex into r_bin
  - Remove mach-ex
* rabin2
  - Add flag -x for extracting bins from file
* Build
  - Update plugins.def.cfg
  - Remove mach-ex stuff from libr/Makefile
2010-07-29 16:04:18 +02:00
pancake
e9a8a96661 * Implemented r_lits_sort() and r_list_add_sorted()
- Add function variables sorted by delta
* Initial import of the io_gdb plugin
  - Statically compiled plugin by default
  - Use libgdbwrap
  - Implements just raw IO read/write
  - Needs more testing
2010-07-22 01:14:13 +02:00
pancake
761925a27c * Add bp_mips and bp_ppc plugins for r_bp
- rm plugins.cfg && ./configure-plugins required
2010-06-30 01:19:03 +02:00
pancake
33fdb14643 * Added dummy anal.mips 2010-06-23 04:02:57 +02:00
pancake
be12c8f284 * Added anal_java plugin (copypasta from r1)
- Split java_ops array into a separate object file
* Fix r_config.vapi and add RConfig instance in RCore definition
2010-05-23 14:31:18 +02:00
pancake
11f5134c91 * Initial import of the procpid IO plugin 2010-05-21 19:05:53 +02:00
Nibble
5c3c8e70c6 * Initial import of x86im (by pluf) into 'x86/x86im/'
* Add dummy ranal plugin for x86im
* Move dislen stuff to 'x86/dislen/'
* Add "import msdn" to TODO.refactoring

--HG--
rename : libr/anal/arch/x86/dislen.c => libr/anal/arch/x86/dislen/dislen.c
rename : libr/anal/arch/x86/dislen.h => libr/anal/arch/x86/dislen/dislen.h
2010-05-03 12:37:51 +02:00
pancake
193bdb886d * Initial work on w32dbg IO, fork and attach still incomplete
- Not yet linked with debugger backend
2010-04-14 23:56:27 +02:00
pancake
0eaded05ca * Remove m68k disassembler because BSD4 is GPL incompatible
- Moved into radare2-extras
2010-03-26 17:19:24 +01:00
pancake
ea5413f760 * Added csr code analysis plugin
- Cleaned up version from r1 code
  - Build asm.csr and anal.csr by default
* Added 'dsu' command. step until
* Remove vala and swig checks in configure.acr

--HG--
rename : libr/asm/arch/csr/csr_disasm/dis.c => libr/asm/arch/csr/dis.c
rename : libr/asm/arch/csr/csr_disasm/dis.h => libr/asm/arch/csr/dis.h
2010-03-23 12:30:04 +01:00
pancake
668a77f7ee * Initial import of the vAVR Atmel disassembler
- Works, but has not yet been tested with real code
  - Code analysis not yet implemented
  - Compiled by default
2010-03-19 00:51:16 +01:00
Nibble
35592a60e9 * r_asm
- Move ppc_disasm and x86_bea to radare2-extras
  - Add gnu ppc disassembler plugin
* r_anal
  - Move x86_bea plugin to radare2-extras
2010-03-10 14:56:45 +01:00
pancake
023bcce689 * Added copypasta 'arm' code analysis for r_anal 2010-03-08 10:53:15 +01:00
Nibble
cbb5fe143b * r_anal
- Update build system
  - Fix analysis of bb longer than blocksize
  - Code cleanup
* build
  - Add anal plugins to plugins.def.cfg
2010-02-28 20:07:36 +01:00
pancake
f8fcba5d81 * Implement plugin support to r_cmd
- Added dummy command **dummy** for testing purposes
  - Initialize CMD dynamic plugins from r_core
* Fix bug in configure-plugins
  - Generates bad config.mk and config.h when no static
    plugins defined for a category.
2010-02-26 00:37:49 +01:00
Nibble
1b5966bf82 * Add support for mach0-64 to r_bin 2010-02-22 14:10:44 +01:00
Nibble
54b0a48a57 * Regenerate configure
* Remove remaining r_bininfo stuff
2010-02-22 04:47:19 +01:00
pancake/imac
dfd884db74 * Initial steps to make osx-ppc debugger work
- Use 'asm.arch=ppc' in POWERPC by default
  - Added r_io_mach for MACH microkernel debugging
    - Compiled as static plugin by default
  - Added darwin mach/ptrace stuff in debug_native
  - Very ugly code.. needs some refactoring
  - Add powerpc-OSX registers description map
  - Added temporally .h files in debug/p/native
* Display verboser version message with 'r2 -V'
* More linking issues fixed for OSX
* Build gdbwrap debugger plugin
  - Not yet usable
* Added R_SYS_OS R_SYS_ARCH and R_SYS_ENDIAN strings
* Deprecate DEBUGGER variable
2010-02-22 02:42:29 +01:00
pancake/imac
9890c6e8b0 * Fix build in OSX
- env.sh now also uses DYLD_LIBRARY_PATH
  - Fixes in ollyasm/dis to link with no global variables
    - Remove double definition of global _state
    - Same for asm_java
  - Split -shared and -Wl,-R into LDFLAGS_{LIB|LINKPATH}
    - Fixes linkage in osx
  - anal_x86_bea plugin now links correctly against BeaEgine.o
  - dietline is now #include'd from line.c
  - no debugger support yet
  - Do not externalize any variable. Some linkage does not support it
* Remove bininfo dependency .. aims to be merged into bin soon
* Added r_str_case() method to change to lower/upper case a string
2010-02-21 20:21:36 +01:00
Nibble
cdf7939df0 * Split r_types.h in r_types.h and r_types_os.h
* Add asm.x86 to the list of static plugins
* Add r_bin to libr.deps
2010-02-20 15:28:21 +01:00
pancake
822a33377b * Initial working implementation of the r_diff with delta in C
- 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
2010-02-05 12:21:37 +01:00
pancake/fluendo
c02ef87ac2 * Add support to ARM for the debugger
- 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
2010-02-03 14:34:00 +01:00
Nibble
61480f889e * r_bin
- Add plugin bin_mach0 (initial support for sections, imports and symbols)
* r_bin_pe
  - Minor fixup
2010-01-15 02:08:38 +01:00
pancake
3d667dbdd9 * Many bug fixes for the build. Oops 2010-01-15 01:56:43 +01:00
pancake
882e3e28c6 * Added libr target to generate libr.a and libr.so
* Build libr_${NAME}.a by default (with PIC objects..)
* iter.h -> r_iter.h
* Initial import of r_list
* Fix name of io.debug plugin

--HG--
rename : libr/include/iter.h => libr/include/r_iter.h
2010-01-14 12:13:48 +01:00
pancake
b3bf9db87a * Store default plugins.cfg configuration in plugins.def.cfg
- Instead of the configure-plugins script
  - exit with 0
2010-01-14 00:12:41 +01:00