Commit Graph

750 Commits

Author SHA1 Message Date
pancake 28de8a232f * Fix build of rapatch 2011-04-28 09:50:38 +02:00
pancake fad6bc0886 * Commited 'rapatch' from lacon-2010 talk 2011-04-28 01:19:38 +02:00
pancake e90ea1b3f1 * Fixes in vapis (RCore.file and RBin.get_libs())
* Fix buffer overflow vuln in rasc2 (thanks @earada)
2011-04-25 00:03:43 +02:00
pancake 616395cca3 * Fix help in radiff2 2011-04-18 22:46:21 +02:00
pancake 8069e1f509 * Fix cmdline arguments parsing segfault in radiff2
* Do not build r_big api
  - It's incomplete, not used and is problematic to build
2011-04-17 03:54:27 +02:00
pancake 6b1001aefc * Implement -g and -C flags to radiff2
- Add support for function/basicblock code diffing
  - Import nibble's test-ragdiff2.py in swig/python
  - Added some documentation in doc/bindiff
2011-04-15 18:59:44 +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
pancake 3b490556f5 * Do not export drx_get and drg_set
* Do not build/use r_th
2011-04-04 14:39:42 +02:00
pancake 075b495a5c * Implement basic register profile for OpenBSD
native debugger backend.
* Fix make symstall in BSD systems
  - PWD var looks like a linuxism
2011-04-02 20:03:00 +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
capi 44fa1dc253 * Add manc and msdn query scripts to rsc2 2011-03-18 14:07:52 +01:00
Nibble 2db84a2e46 * Fix build when compiling in a clean system (thx @esanfelix!) 2011-03-07 20:50:10 +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 d953cd9adf * Initial implementation of the java name mangling
- Added as comments before the method names
* Some fixes in r_bin_java
* Added r_buf(append/prepend)
* Show flags always in new lines
2011-02-27 20:30:41 +01:00
pancake e557d9a385 * Drop 'r_cons.h' from r_fs
* Fix visual glitch in Vej and Vt
* Handle demangled names as comments
  - in rabin2 and core->bin_load
  - Needs to be a RAnalCall at some point
  - bin_java calls the dummy r_bin_demangle_java
  - Add R_BIN_NM_ANY enum
* Add asm.lbytes config to align disasm bytes to left
* Fix visual glitch in function boundaries
* Import upgraded versions of the idc2rdb scripts in doc/
2011-02-25 04:19:30 +01:00
Nibble ddffdff8d2 * Rename r_asm_aop_* to r_asm_op_*
* Rename remaining r_anal_aop_*
2011-02-24 16:50:29 +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
Nibble f3c32e3c17 * Remove references to r_vm
* Don't build r_vm
* Deprecate cmd 'av'
2011-02-23 17:27:59 +01:00
pancake d471bd6da2 * Handle entropy hash type from rahash2 2011-02-16 14:18:31 +01:00
Nibble ec340164c3 * rax2
- Fix another bug in format_output()
  - Remove unnecessary malloc+free
2011-02-15 23:51:05 +01:00
Nibble 4158466b28 * Fix bug in rax2 related to bin conversion (thx Jan Lieven!) 2011-02-15 18:38:18 +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 ec68959bd2 * Clean up ranal2 output
- Avoid ugly 0xffff...
2011-02-08 14:07:51 +01:00
Nibble a906dc18a3 * Fix typo in ranal2 2011-02-08 13:59:50 +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
pancake 64c4e5c014 * Fix various bugs in r_lang api
- Use RList instead of kernel's list.h
* Initial import of 'vala' plugin
  - Allows to write Vala/Genie scripts
2011-02-06 14:10:16 +01:00
pancake 53587faf25 * Implement rap:// remote radare protocol support
- Fully compatible with radare1
  - Server  $ r2 rap://:9999
  - Client  $ r2 rap://127.0.0.1:9999//etc/fstab
* r_io has been refactorized to support client/server io plugins
  - Requires make clean
* Enhacements in Visual mode:
  - [] keys change scr.cols eval variable (hex columns)
  - Handle offscreen cursor and selection
  - Handle <0 seeking in visual mode
2011-02-05 00:20:28 +01:00
Nibble 7de9646195 * Merge 2011-02-04 14:07:56 +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 8924841072 * Some more work on r_core_sysenv*
- fix api, but still not using BLOCK or so
* Fix help for ??? and !?
* Upgrade swig/configure.acr to 0.6.9
2011-02-04 11:30:08 +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 9cd07bd9d2 * Added r_cons_resize() and _interrupt() RConsEvent callbacks
- Use _resize() from visual mode, so redrawing is now cleaner
* Minor bug fixes
2011-01-23 13:12:16 +01:00
pancake f92ca2da8a * Fix r_io_redirect and debugger IO
- Get PID from inner struct instead of aliased by fd
2011-01-22 00:57:43 +01:00
earada 2fd808e19b * Fix rafind2 build
* jk visual commands seeks an opcode size
2011-01-21 10:21:04 +01:00
pancake 3ab9e61c22 * Do not show registers if sync fails
* More work on the io refactoring
2011-01-21 09:17:14 +01:00
pancake bbda7ed61e * Much more fixes for the new r_io
- r_io_malloc plugin is now working
  - r_io_size now accepts only one argument
* Fix nullptr bug in r_fs
2011-01-21 00:21:32 +01:00
pancake ed8d076cbe * Fix r2 -n, remove r2 -t
- Some more fixes related to r_io. still more stuff to do
2011-01-20 23:28:20 +01:00
pancake b8b87f050e * Initial working r_fs API with ext2 fs
- Support file reading and directory listing
* Fix build
2011-01-14 01:02:20 +01:00
Nibble 2e26e35584 * Add bb list into RAnalFcn structure
* Analyze bbs per function
* Remove gdiff from radiff2 temporary (deprecate?)
  - Meanwhile ragdiff2 should be used
* Update TODO
2010-12-24 13:27:20 +01:00
Nibble 28d0a62430 * Change gdiff API so it takes 2 core's as args
* Don't output diff info and vars in 'afl' for loc's
* More refactoring of gdiff
2010-12-06 03:34:44 +01:00
Nibble c254af504f * More optimizations in gdiff
* Fix the usage message of radiff2
2010-12-04 15:24:39 +01:00
Nibble eb88fa40fc * Set variable direction during function analysis
* Add argument "dir" to r_anal_var_add()
* Fix reg handling in x86im plugin
* Fix variable analysis in r_anal
* Use plugin "x86" in ranal2 by default
2010-11-29 20:06:11 +01:00
Nibble f0d2279a0e * Little refactoring of rax2 2010-11-29 13:20:44 +01:00
pancake 61cf8cd3aa * Remove unused libr.pc.acr
* Set procmod group in osx make target of r2 bin
2010-11-29 10:27:11 +01:00
pancake 58fc61d486 * Fix overflow (Thanks Adriana for the patch!) 2010-11-29 01:29:21 +01:00
pancake 623d91e678 * Apply Adriana patch with some new shellcodes for rasc2 2010-11-29 01:28:17 +01:00
pancake cb077db5f2 * Add codesign makefile target for OSX 10.6 2010-11-26 13:11:11 +01:00
pancake 6507ea67b8 * Apply patch from @astralia
- Adds -S and -s flags to rax2
2010-11-25 01:27:27 +01:00
pancake fdaac4c171 * Implement dbg.bep in r2
* Sync r_bin vapi with changes in r_bin.h
2010-11-18 22:57:28 +01:00
pancake 421208a0c7 * Replace main for binsym in r_bin
* Added dummy commands for r_debug_fork/clone
2010-11-18 11:41:17 +01:00
pancake 6d515cc1a8 * Update and reorder TODO tasks
* Added r_file_mmap() functions in r_util
* Do not hash files bigger than 10MB
* Fix abspath() return value and signature
2010-11-17 21:15:34 +01:00
pancake 0aafe05b45 * Step now accepts pid+tid
* Fix attach in w32 debugger
  - use dpa and get first thread by default
* Mark with asterisks the selected pid/thread (dp/dpt)
* Fix reg_write in w32
2010-11-17 02:31:56 +01:00
Nibble 8df7b217eb * List IO plugins with r2 -L 2010-11-17 01:29:33 +01:00
pancake 4db5cded34 * Fix w32dist find command
* Display TODO message in r2 -L
* Implement rax2 -s - and rax2 -
* Honor dbg->tid in many places
* Implement basic stuff for dbg->reason
  - Only w32 and *nix atm
  - Not yet displayed or used
  - Added many new reason types in enum
* Fix w32 register map
* Handle attach:// in io_w32dbg plugin
* Implement w32 process and thread list
  - You can now select the thread
  > dp      # list pids
  > dp=1424 # attach to pid
  > dpt     # list threads
  > dpt=580 # select thread
* Added dummy code to list windows
2010-11-17 00:56:48 +01:00
Nibble f0fe6ae4fa * Fix binr build 2010-11-16 19:43:26 +01:00
pancake cfa24e1879 * Add XML to ldid r2 debugger for iOS
* Fix build of the r2 debugger on darwin-arm
* Implement list of threads and memory regions on darwin-arm
  - just a draft, needs more work
* Add attach:// IO handler to mach plugin
* darwin does not needs -ldl
2010-11-11 01:09:27 +01:00
pancake/n900 9580907a35 * Fix static and nonpic build with no gmp
* Needs to rerun configur-plugins
2010-11-10 10:45:47 +01:00
pancake aacce16095 * Another fix for nonpic build 2010-11-10 04:00:49 +01:00
pancake a6629c610c * Fix static compilation on Linux systems
- Not really portable, needs some work to fix w32 build
2010-11-10 03:55:27 +01:00
pancake 3a44d471f4 * Fixes for pkgconfig and vapi deps
* Apply patch from @astralia for rax2
  - support int->bin and bin->int
2010-11-04 13:19:36 +01:00
pancake 23e6bfb679 * Add manpages for rarc2 rarc2-tool ranal2
* Use the library symlinking layout as reported by Debian
2010-10-27 22:17:55 +02:00
Nibble a3ff1f5261 * Fix initial seek in debug mode to pc (use sr pc)
* Complete 's' help
* Fix dietline echo in 'r2 -v' mode
  - Add cb for scr.prompt
2010-10-27 17:45:53 +02:00
Nibble c79afe3568 * Add var vm.arch
* Fix vm arch setup at startup
* Fix flag set in visual mode when cursor is enabled
* Filter string names before adding flags in r_bin_load
* Fix r_flag_name_filter (do trim)
* Fix r_sys_rmkdir
* Update TODO
2010-10-23 14:27:13 +02:00
pancake 431e626680 * Fix $$$ variable
* Do not set io.va twice
2010-10-22 01:16:32 +02:00
pancake 7592a5e2ba * Fix build of rarc2 on w32 2010-10-19 13:57:00 +02:00
pancake f9e6ca28cf * Fixes in swig/ for OS type selection
* Move rsc2 into binr/

--HG--
rename : rsc2/rsc2.c => binr/rsc2/rsc2.c
rename : rsc2/scripts/intel2att => binr/rsc2/scripts/intel2att
2010-10-18 20:47:13 +02:00
Nibble bfbd12ed3c * Don't add symbols as functions before analyze them
* Update and simplify gdiff
2010-10-13 18:51:10 +02:00
Nibble 11e8d6a1da * Fix va issue in dbg mode 2010-10-13 01:23:27 +02:00
pancake 01b56da424 * Remove -l flag in rarc2
- Replaced by rarc2 -a
* Fix build
2010-10-13 00:43:02 +02:00
pancake f1e46a88f6 * Do not run .!rabin2 from r_core
- Use internal APIs to load binary information
  - Startup time reduced about 2-3 times
  - Thanks @earada for this patch!
2010-10-11 17:11:43 +02:00
pancake f99e946b9b * Initial import of rasc2 (copypasta from r1) 2010-10-04 19:43:40 +02:00
Nibble 836c91c32a * r_util
- Fix r_sys_rmkdir
* rabin2
  - Generate folder structure on extract operations
2010-10-04 13:57:48 +02:00
pancake e8f8e72896 * Added r_bin_get_object() to cache binary information
* Initial work in r_core_bin_load()
  - Integrating rabin2 inside core
2010-10-04 10:55:43 +02:00
Nibble a1d0887ca8 * Fix build (update core/anal.c with the last changes in r_bin)
* Implement extract in rabin2
2010-10-04 04:01:25 +02:00
Nibble cec1f3fa73 * r_bin
- Refactor r_bin to work better with big fatbins
  - Don't load all sub-bins in memory
    Only load the fatbin and the selected sub-bin
  - Add r_bin_set_archidx() and r_bin_list_archs()
  - Update t/{rpathdel.c, test_meta.c}
* rabin2
  - Use '-f str' to select sub-bin by name
2010-10-04 03:46:58 +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 48dd408e45 * Merge
* Minor fixes in r_bin
2010-10-01 11:58:11 +02:00
pancake 8081f02601 * Fix uninitialized variable in rabin2
* Fix null pointer handling in rbin when no xtr plugin found
* Initial draft code for the x86 debug registers implementation
* Fix avr* command
2010-10-01 11:10:59 +02:00
Nibble 41bd2fd0ea * rabin2
- Show filesize in '-x' output
  - Select "sub-bin" using '-a arch_bits' and '-n filename'
* r_bin
  - Add argument "name" to r_bin_set_arch
2010-10-01 10:09:50 +02:00
Nibble 4b558bec3b * rabin2 -x uses filename.arch_bits as output file
* store full path in dyld cache filenames
2010-10-01 08:12:43 +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 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 3ef71b106a * Indentation fixes in rax2 as discused in chat
* Fix compilation of vapi/r_bin
* Some mods in test programs for swig/python
2010-09-26 03:18:04 +02:00
Nibble 0a09b20cc0 * rabin2
- Make -A output more verbose
  - Dump all archs with -x when no one is specified using -a
* cleanup TODO
2010-09-25 12:33:30 +02:00
Nibble 333fbbf55b * rabin2
- Set arch with 'rabin2 -a arch_bits filename'
  - Remove flag -B
  - Implement extract (-x)
2010-09-25 03:45:03 +02:00
Nibble 483ab6160b Apply @earada's patch (thx!)
* Improving rax2
  - Support for many bases.
  - Add -s flag for transform byte to bin (ej: "48454c4c4f" to "HELLO")
  - Add -e flag for endian swap.
* New r_num_to_bits converts nums into binary representation.
2010-09-24 21:25:23 +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 124786c1ac * Added 'drd' command to show only modified regs
* Added r_list_foreach_prev()
* Add RSyscallPort to handle Hardware I/O ports
* Remove libr/TODO and refactor /TODO
* Link with 'ld' in rarc2-tool for nasm
2010-09-24 16:45:56 +02:00
pancake 54677585c2 * Added support for 'nasm' in rarc2 (-n) 2010-09-24 06:10:20 +02:00
pancake 90a2b9f84a * Initial support for multiple arguments in rarc2 for ARM
- Some more fixes in the ARM emitter backend
  - Single quoted strings are now supported, not filtered
  - Fix math opcode names for ARM
  - Added support for /**/ and // comments
* Fix makefile for test programs in rarc2/t
  - Added simple hello world for tests in rarc2/t
2010-09-16 20:44:22 +02:00
pancake 6072a14eef * Simplify and fix rarc2-tool script
* Add support for /**/ style comments in rarc2
* Fix libr2.a warning message
* Fix .string "" directive in rasm2
  - Now works like in GAS. escape chars are handled
  - and quotes are stripped
2010-09-15 13:10:10 +02:00
pancake 9b2d428d1b * Initial hello world for rarc2 in ARM with GAS working
- Few changes needed to work with rasm
* Cleanup some warnings
* Handle foo() as a function definition, so emit frame in rarc
2010-09-15 10:50:43 +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 a9f8d52e59 * Many fixes in ARM assembler and rarc2 support for ARM
- Still not yet usable, but
* Add .byte and .hex in r_asm as directives
* Add test case for r_word api
  - Fix r_word_count()
* Also handle .globl (and .global) to keep GAS compatibility
  - TODO: add .word .fill .align and others
2010-09-14 01:29:09 +02:00
Nibble 5733497a0b * Add bindings for go
* Add swig/go/test-r_bin.go for testing r_bin from go
* Fix build for r_bp and r_search bindings
* Rename enum VarType to VarClass in r_anal.vapi to avoid conflicts
* Add flag -R to rabin_cmd in r2 start up
2010-09-12 12:31:18 +02:00
pancake f4ada2309f * Handle numeric values as radix=10 by default in ollyasm
- Fixes rarc ATT output format for x86
* Fix commandline flags parsing in rarc2
  - Honor intel syntax with ".intel_syntax noprefix" header
    - GAS can now compile att and intel syntax rarc2 output
* Handle .intel_syntax and .att_syntax directives in rasm2
2010-09-10 13:17:24 +02:00
Nibble 5567da9538 * Add support for parsing relocs to r_bin
* Add flag -R to rabin2 to list relocs
* Implement reloc resolution in r_bin_elf for 32 & 64 bits
2010-09-10 11:11:38 +02:00
pancake 2d2131607c * Error on invalid hexpair strings in rasm2
* Fix assemble of str/ldr opcodes in ARM assembler
  - add more opcodes: nop, push, pop
2010-09-10 10:50:53 +02:00
pancake a7e77e78ee * More work on the arm assembler 2010-09-09 01:39:15 +02:00
pancake 183dffcd6b * Fix push immediate opcode analysis in basic x86 analysis
* Import simple arm assembler
* Some fixes for the brainfuck disassembler plugin
2010-09-08 19:49:34 +02:00
Nibble 3455c738df * Fix -e in rasm2 2010-09-08 12:35:38 +02:00
pancake 62935fe017 * Missing build dependency 2010-09-06 16:14:37 +02:00
Nibble f7693a14d2 * Huge refactoring of anal_x86_x86im
* Add comments in anal_x86_x86im explaining how x86im parse the opcodes
* Implement analysis for more opcodes
* Rename R_ANAL_OP_TYPE_RCALL into R_ANAL_OP_TYPE_UCALL (more generic)
* Update anal_mips.c and r_anal.vapi
* Update TODO
2010-09-05 21:20:56 +02:00
Nibble 98a09ecd52 * ranal2
- Add stackop2str() and optype2str()
  - Output op type
* r_anal
  - Fix fcn analysis
  - Remove test_anal.sh
2010-08-25 02:27:42 +02:00
Nibble aed141180e * ranal2
- Move t/test_anal to binr/ranal2
  - Add support for static/dynamic plugins
  - Add flag '-B' for binary input
  - Add support for ascci hexpairs
  - Now input can be given through argv or stdin
  - Output analyzed bytes
* r_asm & r_anal
  - Improve output of r_*_list

--HG--
rename : libr/anal/t/test_anal.c => binr/ranal2/ranal2.c
2010-08-24 22:16:03 +02:00
pancake 895d947f49 * Fix build 2010-08-23 12:50:19 +02:00
pancake 3abfbe418d * Swap file-offset order in visual prompt
* Fix build
2010-08-23 12:39:00 +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 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
pancake b6cc9ca1ba * Merge r_meta inside r_anal
* Display filename in title line of Visual mode

--HG--
rename : libr/meta/README => libr/anal/README.meta
rename : libr/meta/meta.c => libr/anal/meta.c
rename : libr/meta/t/test.c => libr/anal/t/test_meta.c
rename : libr/meta/type.c => libr/anal/type.c
2010-08-20 00:36:22 +02:00
Nibble 283c2efef9 * rabin2
- Add flag -n to filter by {symbol, import, section} name
* r_core
  - dmi accepts argument symname
  - more work on cmd parsing
2010-08-17 13:15:18 +02:00
pancake 3287f8d64d * Filter string to avoid escaped commands execution (r_str_unscape)
* More chars filtered in rabin2 -z (flag ..)
* Parse PLT in order to find matching ordinal in rgot.vala
2010-08-16 14:58:10 +02:00
Nibble 6727897e73 * rabin2
- Add flag -b to set a custom baddr
* r_core
  - Add command 'dmi' to flag the symbols of a given lib in memory
2010-08-16 14:35:15 +02:00
Nibble 28ef002c21 * Fill field 'ordinal' in elf symbols 2010-08-16 01:14:54 +02:00
pancake b7dbae4ebb * Display '*' in S= where you are
* Add note about the bug in io.va/-d/rabin2-r{v}S
* Fix rarc2/t
2010-08-15 21:30:59 +02:00
Nibble a7750b3204 * r_anal
- Add field at to RAnalRef
  - Set ref->at to the addrees of the opcode which does the
    jump/call
  - Set correctly the xrefs "from" address
* r_core
  - Modify afl to accept an optional argument [fcn name] to
    filter output by function
  - Change afl output to group xrefs by type (code and data)
2010-08-02 12:42:59 +02:00
Nibble d094f42d2f * r_bin
- Fill RBinImport->size within bin plugins
  - Add field size to RBinImport
* r_bin_elf
  - Correct value of r_bin_elf_symbol_t->size for imports
* rabin2
  - Output af+ command in radare mode
* Update TODO
2010-08-01 11:02:55 +02:00
Nibble 62e24bd0c6 * r_bin_fatmach0
- Huge refactoring of r_bin_fatmach0
* rabin2
  - Don't print msg "n bins extracted" in radare mode
2010-07-29 18:15:02 +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
Nibble 344bcf16a6 * Fix build 2010-07-23 12:19:39 +02:00
pancake 894202db16 * Fix creation of ~/.radare2/rdb and r2 -p (Thanks edu!)
* Re-run ./configure-plugins if .def.cfg is newer than .cfg
* Documentate build instructions of the TestRBin.java
* Sync TODO and ChangeLog
2010-07-23 01:15:03 +02:00
pancake 2f09509630 * Fail when binr build fails somewhere
* userconf R2_VERSION
* Implement some more # hashing algorithms
2010-07-15 13:34:53 +02:00
Nibble 3131a9a7cf * Speed up make mrproper 2010-07-13 11:59:55 +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 3c7610bd9f * Some enhacements for rarc2.
- Add -s flag to use att syntax instead of intel one
  - Flag -A is the new -a (show selected arch)
  - Some more work on the arm code generation backend
  - Simplify some code (-58LOC)
  - Finish manpage rarc2(1)
2010-06-29 16:50:15 +02:00
pancake affbba8aa2 * Rename r2rc to rarc2
- Moved into binr/rarc2
  - Integrated with symstall
  - rarc2-tool now support -xc and -cx combo
  - Add rarc2.1 manpage
* Add some bugs to review in TODO

--HG--
rename : r2rc/Makefile => binr/rarc2/Makefile
rename : r2rc/README => binr/rarc2/README
rename : r2rc/TODO => binr/rarc2/TODO
rename : r2rc/emit_arm.c => binr/rarc2/emit_arm.c
rename : r2rc/emit_x64.c => binr/rarc2/emit_x64.c
rename : r2rc/emit_x86.c => binr/rarc2/emit_x86.c
rename : r2rc/i/libc.r => binr/rarc2/i/libc.r
rename : r2rc/i/socket.r => binr/rarc2/i/socket.r
rename : r2rc/out.c => binr/rarc2/out.c
rename : r2rc/r2rc-tool => binr/rarc2/rarc2-tool
rename : r2rc/r2rc.c => binr/rarc2/rarc2.c
rename : r2rc/rcc.h => binr/rarc2/rarc2.h
rename : r2rc/t/Makefile => binr/rarc2/t/Makefile
rename : r2rc/t/argv.r => binr/rarc2/t/argv.r
rename : r2rc/t/bytedump.r => binr/rarc2/t/bytedump.r
rename : r2rc/t/data.r => binr/rarc2/t/data.r
rename : r2rc/t/dump.r => binr/rarc2/t/dump.r
rename : r2rc/t/hello.r => binr/rarc2/t/hello.r
rename : r2rc/t/if.r => binr/rarc2/t/if.r
rename : r2rc/t/inline.r => binr/rarc2/t/inline.r
rename : r2rc/t/input.r => binr/rarc2/t/input.r
rename : r2rc/t/loop.r => binr/rarc2/t/loop.r
rename : r2rc/t/ptr.r => binr/rarc2/t/ptr.r
rename : r2rc/t/rawsys.r => binr/rarc2/t/rawsys.r
rename : r2rc/t/rawsys64.r => binr/rarc2/t/rawsys64.r
rename : r2rc/t/regs.r => binr/rarc2/t/regs.r
rename : r2rc/t/ret.r => binr/rarc2/t/ret.r
rename : r2rc/t/room.r => binr/rarc2/t/room.r
rename : r2rc/t/segfault.r => binr/rarc2/t/segfault.r
rename : r2rc/t/shell.r => binr/rarc2/t/shell.r
rename : r2rc/t/sub.r => binr/rarc2/t/sub.r
rename : r2rc/t/syscall.r => binr/rarc2/t/syscall.r
rename : r2rc/test.r => binr/rarc2/test.r
2010-06-28 20:30:20 +02:00
pancake cb5f4f26da * Fix segfault in osx 2010-06-27 22:15:44 +02:00
pancake e101e5023d * Fix build on mingw32 2010-06-27 22:14:06 +02:00
pancake 7ff20e59db * Add -t flag to launch rabin2 in a thread
* Fix ^D using threaded load
* Only load rabin info when no project file exists
* r_core_project_open does not works on directories now
* Sync r_core.vapi
2010-06-24 23:14:12 +02:00
pancake 37c3e25664 * RCore now depends on RThread
- Loads rabin2 information in a background thread
  - Prompt is now much more responsive
  - Fix segfault in null pointered var in RThread
* rabin2 load strings only from data sections if found
* Split r_core_prompt/exec (make it cooperative-thread-friendly)
2010-06-23 17:30:16 +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 790491a707 * Added basic guidelines in TODO.decompiler
* r2 now support -s and -b with ut64/ut32 offsets
* Remove 'goto' statement
2010-06-21 21:08:43 +02:00
pancake ace71e8be4 * Load string flags into r2
- Fix string filtering
* Display string references for ARM (load indirections)
* Fix numeric indexing of branch references in visual mode
* Display '>' char for call instructions
* More work on RMeta
  - unscape strings to avoid \n and \t
  - handle correctly the 'Cs' command
  - Add partial documentation for the rest of 'C' commands
2010-06-21 00:48:06 +02:00
pancake 276f186e7e * Add rafind2.1 manpage
* Many cleanups in the TODO files
2010-06-18 17:52:30 +02:00
Nibble 3eb855f6c4 * r_bin
- Rename characteristics into srwx
  - Fix ref to binmain in the pe64 plugin
* r_bin_pe
  - Rename section.characteristics into section.flags like in
    the other formats
2010-06-17 18:45:27 +02:00
pancake c528edf318 * Link r_reg when r_anal 2010-06-17 00:04:57 +02:00
Nibble 414f5a38bc * More fixes on build system
- 'make mrproper' now works like 'hg purge --all'
  - More fixes on 'make clean'
  - Remove some missing -Wl,-R
2010-06-15 14:10:42 +02:00
Nibble 19dfb38b23 * r_core
- Fix segfault (pancake)
* Build
  - Remove rpath stuff
  - Simplify Makefiles
  - Add rafind2 to binr/Makefile
  - Add symstall to binr and r2rc
  - Fix minor deinstall issues
2010-06-15 13:10:46 +02:00
Nibble 2d81aabbd5 * Fix the build of radare2 and radiff2
* Remove r_line dep from cons/t/Makefile
* Build r_cons before r_line in libr/Makefile
2010-06-15 01:23:34 +02:00
pancake 16089bb6e9 * Fix build of binr/
- Some missing deps everywhere
* Initial work for RAnalCond
2010-06-15 00:46:18 +02:00
Nibble 68aeb6f92a * Add targets clean & mrproper to binr/Makefile
* Use r_list_free instead of r_list_destroy in r_anal
* Some minor fixups in r_anal
2010-06-14 18:29:52 +02:00
pancake d27e461811 * Fix linking issues reported by matalaz (Thanks!) 2010-06-06 23:26:11 +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
pancake fdb0cf4229 * Do not warn in r_lib until R_DEBUG env is defined 2010-06-03 10:57:34 +02:00
Nibble c63963c598 * Fix binr/Makefile (thanks jan! :) 2010-05-31 19:59:31 +02:00
Nibble fcc6b8d013 * Add flag -M to rabin2 at radare2 startup and cg
* Add r_asm_mdisassemble_hexstr
* Update r_asm.vapi
2010-05-30 13:00:21 +02:00
Nibble 2f43431e80 * r_bin
- Add r_bin_get_main
  - Implement get_main for elf32 & elf64
  - Rename RBinEntry to RBinAddr
* rabin2
  - Add flag -M to output main offset and va
* bindings
  - Update r_bin.vapi
  - Minor fixup in r_util.vapi
2010-05-30 06:06:25 +02:00
pancake 64c329d297 * More work for 'binr'. Hopefully everything is done now :) 2010-05-29 13:24:47 +02:00
pancake eb05e6a6b2 * Move all the r2 programs into binr/
- Little cleanup of the build system
2010-05-29 03:30:36 +02:00
pancake 49f09cc421 * Initial refactor to build libr bins (binr) out of libr
- Cleaner build/install
2010-05-28 17:15:20 +02:00