Commit Graph

32 Commits

Author SHA1 Message Date
pancake
a1f45dbf8a * Add support for static plugins to r_debug
- 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
2009-08-22 01:54:24 +00:00
pancake
65da25d4c0 * Implement STATIC PLUGIN support for r_parse
- Use the new 'asm-like' build system for r_parse plugins
  - Added new callback to 'assemble' parseable expressions
    into compilable asm code
  - Refactorize and remove warnings in parse_mreplace
* Added r_str_char_count() in r_util
* Some fixups in the fastcall code in r_asm

--HG--
rename : libr/parse/p/mreplace/mmemory.c => libr/parse/p/parse_mreplace/mmemory.c
rename : libr/parse/p/mreplace/mmemory.h => libr/parse/p/parse_mreplace/mmemory.h
rename : libr/parse/p/mreplace/mreplace.c => libr/parse/p/parse_mreplace/mreplace.c
rename : libr/parse/p/mreplace/mreplace.h => libr/parse/p/parse_mreplace/mreplace.h
2009-08-14 01:44:12 +00:00
pancake
bc1b1b976e * Initial implementation of r_asm_fastcall()
- VAPI sync
  - Used to get register N to call fastcalls (syscalls f.ex)
* Code analysis marked as 8-bit compliant
2009-08-14 00:37:18 +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
Nibble
857df2088b * Fixed bug in r_bin_elf resolving imports
* Fixed 'rasm2 -o'
2009-06-11 14:28:35 +02:00
Nibble
499adab6f1 r_asm
- Remove some warnings from r_asm
  - Redefine parameters in several functions
2009-04-23 00:09:55 +02:00
pancake/fluendo
eaac73b314 * Apply skurz0's patch implementing psosvm architecture for r_asm 2009-04-22 20:17:49 +02:00
Nibble
fec51758cc * Fixed infinite loop in asm_x86_olly when str == "" 2009-04-20 11:37:54 +02:00
Nibble
161b7b745d * r_asm
- Fixed binary output of rasm2
  - Added R_ASM_BUFSIZE
  - vapi update
  - Added assemble test into asm.vala
2009-04-16 19:20:03 +02:00
Nibble
b5c9a13366 * r_asm
- Added pseudoinstruction .asciz
  - asm_x86_olly assembles the shorter opcode
* rasm2
  - Minor fixups and refactoring
* Misc
  - Added new quote into fortunes
2009-04-15 01:19:42 +02:00
Nibble
724d900e62 * r_asm
- Fixed initialization
  - Fixed assembly fallbacks
  - Removed dupped memcpy's in disassembly functions
  - Added the directive ORG to asm_x86_nasm
  - Refactoring
* rabin2
  - Added -L to list supported plugins
2009-04-14 15:21:19 +02:00
pancake
5f74c8068d * Move buf_hex memcpy in r_asm instead of dupped code in every plugin
- Plugins needs to be synced
* Added x86nasm assembler backend to handle x86-64
  - Not yet working. Pretty buggy :)
* Fix support of building static plugins for r_bp
  - Statically link r_bp_x86 by default
* Implement ugly r_sys_cmd_str() command in r_util
2009-04-13 22:47:02 +00:00
pancake
cdd80105cb * Initial dummy implementation of r_bp
- Managing breakpoints for the core
  - Initial work on the support for breakpoints
    for the r_debug plugins
* Adding some dummy work for context support in r_anal
* Make asm_set_bits check per-plugin supported bit sizes
  - Now asm plugins have 'arch' and 'bits' attributes
  - Used to setup default callbacks for undefined 'assemble' callback
  - Also used to avoid setting asm.bits eval variable to invalid values
  - We need a way to display all this data
* Added DEFAULT_ARCH in config.h to setup default arch to asm and anal
* Added r_config_set_i_cb()
  - Make r_config_set restore value when callback is called and fails
  - asm.bits now has a config callback
* Added _LAST in some r_anal enums
2009-04-11 21:22:20 +00:00
pancake
c264147138 * R_APIize r_asm and r_var
* Implement write support to r_io plugin dbg_ptrace
* Fix libtcc lang plugin compilation problem
* Use r_core_write_at instead of r_io_seek+r_io_write
* Implement 'wa' command.
  - Integrated with visual mode (bind to 'a' key)
  - Added 'x' key in visual to write hexpair strings
* Fix signature of 'assemble' function in r_asm (const u8 *)
2009-04-07 00:26:41 +00:00
Nibble
a7fc1db4bb * rasm2
- Added -B and -l flags for binary input/output
  - Added support for assembling several instructions (separated by ;)
    e.g.: $ rasm2 "push eax; push ebx"
* r_asm
  - Fixed bug in asm_x86_olly
2009-04-05 15:23:36 +02:00
pancake
d41e40ba05 * Huge build system refactoring
- Make proper use of the config-user.mk
  - Accelerate build by manually checking timestamps of bin/lib to objs/srcs
  - Use '-MD' by default
  - Lot of minor fixups done in multiple places
  - Fix PREFIX/LIBDIR installation/loading problems for plugins
  - Some segfaults has been fixed
  - Use R_API in r_core and r_lib
* Add 'vm' to be build by libr by default
* Add 'libs.c' in core/ to manage plugins from core
  - Added 'dir.plugins'
  - Make '-e' and '-L' radare2 flags work
  - Plugins are not loaded multiple times now
* Added r_lib_types string array containing plugin types strings
* Minor fixups in r_debug
  - Properly check 'contsc' delegate
  - Separate r_debug_wait()
* Rename dbg-ptrace into dbg_ptrace

--HG--
rename : libr/debug/p/dbg-ptrace.c => libr/debug/p/dbg_ptrace.c
2009-04-01 00:28:13 +00:00
pancake
99f284f358 * Some work for r_bininfo library
- Extend API to get file and line numbers from a virtual address
  - Added addr2line-like test program 'rabini'
  - Added 'addr2line' plugin
* Add r_file_slurp_line helper in r_util
* Added initial work to support multiple compilers (gcc only atm)
  - tcc support under development
  - Make HAVE_REGEXP be optional
2009-03-22 04:37:46 +00:00
Nibble
acc455109f * Several fixups 2009-03-10 12:21:46 +01:00
pancake
19fa55ba33 * Add random documentation for dynamic language plugins
* Properly installation of vapi files
  - Lot of fixtures to build a external hello world in gtk+vala+r_asm
  - default staticplugins for r_asm are:
    mips, java and x86_olly by default
  - Add r_util.vapi and make .pc file point to -lr_util
  - Use .deps to generate dependencies between vapi files
  - Fix r_asm.vapi (Added Asm.Aop struct)
    - add set(string) method
    - asm/disasm -> assemble/disassemble
* Fix warning + build in sign.c
  - Included in default build
* Fix segfault in r_lib with NULL in opendir()
* More fixtures for r_asm_plugin_*
  - use #ifndef CORELIB
  - drop 'static'
* Update README
2009-03-10 01:49:24 +00:00
Nibble
d51005f027 * Added 'static-plugin' feature to r_bin module
* Minor fixups in r_asm build
* Added missing IFDBG in lib.c
2009-03-09 13:03:42 +01:00
pancake
4ba2e545ae * Fix warn in javasm.c
* Fix asm_x86 makefile rule dup
* Fix build of x86_bea plugin
* Add asm.offset and asm.bytes in r_core
2009-03-09 02:03:32 +00:00
pancake
b2e785fc61 * Add 'static-plugin' feature to r_asm module
* Make rabin2 support 'arm' instead of 'asm_arm' for -a (autoprefix 'asm_')
* Some build fixtures
* Static plugins are configurable in libr/config.mk and libr/config.h
2009-03-08 23:49:15 +00:00
Nibble
8ff0d7e13c * Removed several warnings 2009-03-06 12:53:19 +01:00
Nibble
3d76339cec * Added java plugin for r_asm
* Added java assembly support in rasm2
2009-03-05 16:58:13 +01:00
Nibble
ea44bb103a * r_anal
- Added initial anal_x86_bea plugin (op analysis using bea engine)
    'ao' command in radare2
  - Minor fixups
* r_asm
  - Modified r_asm_aop_t to fit r_anal requirements
  - Updated r_asm plugins
* r_parse
  - Removed several warnings from mreplace
  - Removed unnecessary includes
2009-02-26 15:15:19 +01:00
Nibble
1b71e0e52d * Fixed build O:)
* Removed warning from asm_x86_bea plugin
2009-02-20 16:29:12 +01:00
Nibble
bda701d02f * r_asm
- Removed warnings
  - Added error handling to rasm2
* r_lang
  - Fixed "print help" bug
2009-02-19 18:13:34 +01:00
Nibble
ab956379ea * Fixed plugin name length error in r_{asm, anal, lang}
* r_asm
  - asm_bea renamed to asm_x86_bea
  - asm_olly renamed to asm_x86_olly
  - Minor fixups in rasm2
* r_debug
  - R_ASM_ARCH_ renamed to R_DBG_ARCH_

--HG--
rename : libr/asm/p/asm_bea.c => libr/asm/p/asm_x86_bea.c
rename : libr/asm/p/asm_olly.c => libr/asm/p/asm_x86_olly.c
2009-02-19 16:41:51 +01:00
Nibble
d8f56c56e9 * r_asm
- Fixed asm_bea
  - More refactoring on rasm2
2009-02-19 14:24:51 +01:00
Nibble
2cc6fcd1e4 * r_asm
- Initial import of bea engine
  - asm_x86 splited in asm_x86, asm_olly and asm_bea
  - More refactoring
2009-02-18 22:10:47 +01:00
Nibble
777235bb87 * r_asm
- Added arm plugin
  - Added bf plugin
  - Added csr plugin
  - Added m68k plugin
  - Added mips plugin
  - Added ppc plugin
  - Added sparc plugin
  - Removed deprecated test programs
  - Updated rasm2 (not working)
* r_parse
  - Initial import

--HG--
rename : libr/asm/arch/arm/asm.c => libr/asm/p/asm_arm.c
rename : libr/asm/arch/bf/asm.c => libr/asm/p/asm_bf.c
rename : libr/asm/arch/csr/asm.c => libr/asm/p/asm_csr.c
rename : libr/asm/arch/m68k/asm.c => libr/asm/p/asm_m68k.c
rename : libr/asm/arch/mips/asm.c => libr/asm/p/asm_mips.c
rename : libr/asm/arch/ppc/asm.c => libr/asm/p/asm_ppc.c
rename : libr/asm/arch/sparc/asm.c => libr/asm/p/asm_sparc.c
rename : libr/asm/arch/x86/pseudo.c => libr/parse/pseudo.c
2009-02-18 03:47:40 +01:00
Nibble
23afb7eeb3 * r_asm
- Used plugin infrastructure
  - Huge refactoring
  - Added x86 plugin

--HG--
rename : libr/asm/arch/x86/asm.c => libr/asm/p/asm_x86.c
2009-02-18 01:49:26 +01:00