Commit Graph

75 Commits

Author SHA1 Message Date
Nibble
9207ece839 * Fix segfault printing big buffers
* Modify r_anal_reflines_str to return char*
2010-04-08 18:29:46 +02:00
Nibble
d8cb940a9d * Initial refactoring of r_anal & r_core 2010-04-07 13:43:50 +02:00
pancake
6e6dbf5b81 * Some fixes in code analysis
- Fix some issues for 64bit instructions in z0mbie dislen
* Fix EOF, ^D and terminal resize
  - Do not understand terminal resize as EOF
* Display rpathstrip lines to identify segfaults
* Implement 'ao' command to analyze opcodes
2010-03-26 17:01:25 +01:00
pancake
728bd1f817 * Fix w32 build 2010-03-25 10:18:59 +01:00
pancake
a5d4166cf5 * Fix compilation of r_lang vapi for valadoc
* Fix valadoc visualization and update radare.org/vdoc
* Added 'agc' command to draw graphviz graph of calls
* Remove some unused flush calls in various 'ag' commands
2010-03-24 01:24:27 +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
6d6ede7ee6 * Disassemble branch-in-the-middle instructions
- Uses reflines code analysis to get some hints
* Rename RAnalysis into RAnal
2010-03-19 12:00:04 +01:00
Nibble
e834fc9c9b * r_anal
- Fix aop->addr asignment in plugins
* r_core
  - Add commands 'agl' and 'agfl' that output graphs with meta-data
2010-03-15 19:47:26 +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
Nibble
9af6794cec * Rename MALLOC_STRUCT into R_NEW and deprecate it. 2010-03-12 13:35:10 +01:00
Nibble
21add09f5d * r_anal
- Fix local var / arg analysis
  - Add some opcodes to p/anal_x86.c
* r_util
  - Add macro r_num_abs
2010-03-12 12:15:35 +01:00
Nibble
e12bcd1f3b * r_core_anal
- List vars in 'afl' output
* r_anal
  - Add r_anal_var_type_to_str
  - Use hex delta in var names
2010-03-12 11:07:05 +01:00
Nibble
6d7184a1d6 * Build
- Remove r_var from libr.pc.acr
* r_anal
  - Rename the var typename to name in order to avoid problems
    with the c++ code generated by swig
2010-03-12 03:24:38 +01:00
Nibble
9a1f1bc44c * r_anal
- Split anal.c in several files
    (bb.c, aop.c, var.c...)
2010-03-12 03:05:20 +01:00
Nibble
071aaf0a4e * r_anal
- More work on r_anal_var API
  - Initial working implementation of r_anal_var
  - Avoid duplicated refs
2010-03-12 02:45:24 +01:00
Nibble
57be33ff76 * Build
- Remove remaining r_var.pc.acr
  - Remove references to r_var from configure.acr
* r_anal
  - More work on r_anal_var_*
2010-03-11 19:52:05 +01:00
Nibble
d05b0fedf4 * r_anal
- Initial work in var analysis
  - Move r_var into r_anal
* r_var
  - Removed

--HG--
rename : libr/var/var.c => libr/anal/var.c
2010-03-11 17:19:33 +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
Nibble
6303a8d10b * Remove references to bea plugins from r_anal & r_asm 2010-03-10 15:15:50 +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
Nibble
7e5e81e3cd * r_list
- Fix r_list_foreach
* r_anal
  - Move p/arm.h to arch/arm/arm.h
  - Add arm.mk to p/Makefile
* r_core_anal & r_anal
  - Refactoring using r_list_foreach

--HG--
rename : libr/anal/p/arm.h => libr/anal/arch/arm/arm.h
2010-03-08 12:31:14 +01:00
pancake
1914c38729 * Added missing arm.h 2010-03-08 11:05:58 +01:00
pancake
023bcce689 * Added copypasta 'arm' code analysis for r_anal 2010-03-08 10:53:15 +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
Nibble
f163a08aea * r_anal
- Add r_anal_fcn
* r_core
  - Implement 'af' subcommands
  - 'af @ [addr]' needs more work
2010-03-03 12:08:27 +01:00
Nibble
1038c46565 * r_core_anal
- Avoid bb overlapping
  - Code refactoring
* r_anal
  - Add r_anal_split and r_anal_overlap
2010-03-01 16:50:37 +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
Nibble
6ff04b0869 * r_list
- Fix r_list_unlink
  - Add r_list_split and r_list_split_iter
* r_core_anal
  - Split basicblocks (only 1 entrypoint and 1 exitpoint)
* r_anal
  - Add field addr to RAnalysisAop
2010-02-27 15:56:07 +01:00
Nibble
ee4ef8fa91 * Fix BB analysis algorithm
* Add r_core_anal_graph function
  - Generates graphviz code from "ac" data
* Add command "ag" to r2 (Output graphviz code)
2010-02-27 11:56:41 +01:00
Nibble
a0c28f1394 * More work on r_anal
- Basic Block analysis is working
2010-02-26 21:00:03 +01:00
Nibble
54e804eec9 * Fix r2 build
- Add CFLAGS+=-DCORELIB in libr/cmd/Makefile
  - Add target all in r2rc/Makefile
* r_core
  - Add dummy command ac (stands for analyze code)
* r_anal
  - Reorganize code
  - Add function r_anal_bbs (not working yet)
2010-02-26 13:08:42 +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/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
pancake
f343c4d74f * Fix delta seeking (do not allow seeks <0)
* Out of file reads (padding) filled by 0xff
* Added r_sys_cmd () to wrap r_system()
* Fix debug registers command to display segment and flag registers
  - Some draft changes in r_debug (signal handling and backtrace)
* Fix warnings in r_line
* Many more indentation fixes
  - Added st32 and st8 basic types
2010-02-02 11:09:52 +01:00
pancake
f974fea7da * Many fixes in r_io and r_anal from r_core
- Reference code lines are displayed again
  - Optimize the open_as method of RIo
  - Do not use R_XXX_NAME() macros anymore. simplify!
  - Add 'ah' command to select the handler
* Do not allow to seek on unreadable addresses
  - Warns a lot but its better. More strict
* SEEK_END is now UT64_MAX. Fear
2010-01-31 02:30:59 +01:00
pancake
7ce3232747 * Build all pkgconfig files (fixes valaswig stuff)
* Split some install targets
* Fix segfault in r_anal when not setting any handler
* Rename R_ASM_SYN -> R_ASM_SYNTAX cprefix
  - R_ASM_*_NULL -> R_ASM_*_NONE
* Added nonworking scr.html eval key in r_core/config
* Add install-ruby target for swig bindings
* Use @VERSION@ in libr.pc.acr
* Lot of fixes for valaswig integration
2010-01-25 11:54:25 +01:00
pancake
3d667dbdd9 * Many bug fixes for the build. Oops 2010-01-15 01:56:43 +01:00
pancake
8ba7b6b043 * Many build fixes for mingw32
- See doc/windows
* Rename config.mk to global.mk
  - Avoid name collision (cascade includes in rules.mk)
* Added ${EXT_EXE} in some test program directories
* Split rules.mk into config.mk
  - Some scripts just need to get the environ (config.mk)
  - They dont need the rules

--HG--
rename : config.mk => global.mk
2010-01-15 01:32:28 +01:00
pancake
ec4673b6e1 * Fix build of libr/vapi/t and some bugs in vapis
* Fix some minor random warnings
2010-01-07 22:26:03 +01:00
pancake
78dbab76d6 * Added basic working example in swig-python for r_util
* Add _write and _puts methods for r_socket api
  - fgets -> gets
  - fix r_socket_printf
* More random fixes
* typedef all structures in r_util
2009-12-22 13:27:43 +01:00
pancake/fluendo
1ac990a330 * Fix build 2009-11-23 17:49:40 +01:00
pancake
deb263a5fb * Apply whats's patch fixing r_search for stripstr
- Thanks! :)
* Added dummy r_socket_proc_* api
  - Needs to be moved outside r_socket
  - Added two non-working usage examples
* Add some checks and enhacements to the r_buf API
  - Implemented in r_util.vapi
* R_APIfy the r_cache api
* Add missing methods in r_socket.vapi
* Update the README file in r_anal describing the
  new design of r_anal..not yet finished
2009-10-12 17:41:52 +02: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
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
f1c9c1e778 * Some malloc checks in _new() class constructors
- Fix warnings in many places
* R_APIfication of r_anal
  - Fix probable segfault in x86_bea
* Use macros to define plugin names
* Fix build of radare2, rasign2 and debug/t/main
* Call sundo_push() when io_seek
* Added toggles for seek and write undo levels

--HG--
rename : libr/sign/t/rasign.c => libr/sign/t/rasign2.c
2009-09-09 00:35:00 +00:00
pancake
a9d47cbecb * Initial working version of the r_iter for Vala
- pointers is the answer
2009-09-03 11:17:00 +00:00
pancake
bca428f994 * Some ideas for the code analysis module
* Fix r_iter_last()
  - Some more work on the Vala integration
* Grep for README and TODO for hg-miss
2009-08-24 12:03:37 +00:00
pancake/fluendo
57cb3628fa * Added basic iterator helper functions (help vala integration?) 2009-08-19 18:38:35 +02: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