262 Commits

Author SHA1 Message Date
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
a2ab58dbe6 * Implement 'Ct' command to manage anal_var_types
* Minor todo cleanup
* Use more PFMT64
2010-07-13 10:56:56 +02:00
pancake
773c2549ad * Initial implementation of callback commands for r_bp
- Added 'dbc' command to configure them
* Check breakpoint stop everywhere
2010-07-13 01:20:57 +02:00
pancake
c36f43c55c * Check 'hg' before starting to build.sh
* support array types for function string serialization
* Fix undo seek when io->va is enabled
  - Fix Vu and VU commands (must read after seek)
* Add patch from edu adding Start/End keys support in dietline
  - Fix r_parse_x86_pseudo for att syntax
2010-07-13 01:00:36 +02:00
pancake
67ad35187b * Refactor TODO
* Added r_anal_fcn_to_string() and get_var()
  - vars now have array size and direction
* Some random fixes
  - minor opimitzation in autocompletion (thx edu)
* Added Vtlr command to rename in visual tracked flags
2010-07-12 21:37:40 +02:00
Nibble
14b3479658 * r_anal
- Modify stackptr on 'ret imm'
  - Improve analysis of 'push ref' instructions
* r_bin
  - Print a Warning message when a fat mach-o is opened
* Update TODO
2010-07-12 17:17:31 +02:00
pancake
87512b23b0 * Apply r_parse fixes from edu to support more than one numeric
to flag replacment and avoid 0x0 substitutions
* Implement 'fr' command
* Add autocompletion for /a
2010-07-12 14:46:43 +02:00
pancake
f32de77f4c * Add more stuff for build.sh as explained in the mailing list 2010-07-12 01:40:20 +02:00
pancake
2a9fecfe86 * Added 'build.sh' farm script
* Implement r_log api
* Fix issues in swig bindings
2010-07-12 00:50:00 +02:00
Nibble
89a63b5c3a * Fix segfault parsing imports in mach-o
* Simplify the output of the command 'S'
* Update TODO
2010-07-11 13:15:18 +02:00
pancake
182b7737cf * Remove deprecated documentation
* Some syntax fixes
* Some changes in the design of the vars in r_anal
* Remove 'CF' command and META_FUNCTION type
* Fix 'S' '*' mark when in debugger
2010-07-02 02:01:51 +02:00
pancake
cc35fbf14f * Added file.desc
* Cx/CX is not working again, needs more love
* Implemented 'pdf' .. needs review
2010-06-30 11:59:52 +02:00
pancake
a6840204b5 * Fix Vd command
- Added Cd command to define data
2010-06-30 02:44:24 +02:00
pancake
bc2c79ee8d * Use RList in r_bp
- vapi updated
* Generalize the use of PrintfCallback typedef
  - used in r_bp and handled by r_cons in r_core
2010-06-30 01:13:09 +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
6e1653881d * Load constant pool from RCore in RAsm
- this is a compiletime module dependency
  - java needs to share constantpool between anal, asm and bin
* Added compile-time introspection POC macros in r_types.h.h
2010-06-29 15:47:30 +02:00
pancake
664732593c * Fix autocompletion in r_line
- All argc/argv responsability has been moved to the callback
  - Makes the code simpler in r_line
  - Do not bypass 70 column width in list of options
  - Remove deprecated code
2010-06-29 01:18:30 +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
236d78295d * Fix debug regs, memory read in w32 debugger
- Fixes some segfaults and null string issues
  - Simplify and clean code (still more work needed)
* TODO: updated
2010-06-28 14:12:34 +02:00
pancake
80fc77a8b4 * Fix w32dist segfault in plugin.dll
* Fix read registers in w32 debugger
  - seek do not seems to work
2010-06-28 02:12:35 +02:00
pancake
21d2531b7f * Fix segfault in java disassembler
* Update compilation instructions for w32 in doc/windows
* Identify new osx binaries as mach0, not java
* io.va only works when there are configured sections
2010-06-27 23:12:55 +02:00
pancake
c73e43bf40 * Fix print_address function for mips disassembler
* Implement 'gp' register index inside .got section for get_main on mips
* Use more switch() in core/cmd.c
* Simplify some random code
2010-06-27 21:33:11 +02:00
pancake
456fb16e90 * Add autocompletion for 'e', 's', 'f' and '?' commands
- Some more stuff must be deprecated in r_line
* Export FILE environment variable in r_core_file_open
2010-06-25 19:47:47 +02:00
pancake
989082a699 * Hacky fixes for Cx/CX xrefs in 'pd' and r_meta
- rmeta now uses m->printf from r_cons (grep-friendly)
2010-06-25 18:00:17 +02:00
pancake
255191c670 * Some more work on r_cons_grep
* Minor refactor in TODO file
* Display xref data (Cx/CX are broken atm)
* Added Vx command
* Compare flag names with ut64 hashnames (faster execution)
* Swap d->i and x->d print formats
* Hint in r_str_cmp
2010-06-25 11:22:14 +02:00
pancake
e14bbdf6e2 * Fix ^w in r_line
* Initial implementation of /a command
  - Search for code/data references using code analysis
* Add search.from and search.to eval vars and honor them in '/' command
2010-06-25 00:21:22 +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
5182d9a0fe * Added dummy type.c for r_meta
* Fix build on mipsel arch
2010-06-23 03:33:41 +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
255504b79c * Added initial aop_to_string() method for RAnal
- accessible via asm.decode
* Add more 'Vd' keys (data, code, string, ..)
2010-06-21 11:55:48 +02:00
pancake
00214c95ef * Add 'C-*' command to unset all metadata 2010-06-21 02:05:23 +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
pancake
4f8fc7d926 * Added traced field in RAnalBB
- Display 'traced' flag in 'abl' command
* Initial work on 'dd' command (filedescriptors)
  - API defined, not yet implemented or used
2010-06-18 11:09:19 +02:00
pancake
e7802b6893 * Sync TODO 2010-06-18 00:56:32 +02:00
pancake
4812bb5877 * meld heads 2010-06-18 00:10:09 +02:00
pancake
e5ad647df5 * merge 2010-06-18 00:08:10 +02:00
pancake
5399367daa * Propagate two arguments for conditionals
* Rename RLFList to ROFList (25.2% funnier than before)
2010-06-18 00:06:19 +02:00
pancake
c8da941768 * Very early work on r_anal_call api
* Initial support for visual cursor with invert cons in 'pd' bytes
  - Some changes in '*' and '/' keys in visual modes (+-16)
  - '+/-' in visual cursor works as in r1 (inc/dec cursor byte)
* Rename 'zf' into 'zh' for header, not function
  - 'zf' stands now for function signatures (args, types, ret, ...)
2010-06-17 17:55:39 +02:00
pancake
23ad3d2415 * Added asm.linescall=false (default)
- Implemented in anal_reflines to skip call analysis for lines
* Set dbg.trace=true by default
* Display trace count and times in 'pd' (asm.trace)
  - counter starts as 1, not 0 :)
* Added 'absolute' variable in RAnalValue (not yet used..)
  - Defines the sign of the value (needs arch-dependent code)
* Sync TODO files
2010-06-17 02:22:50 +02:00
pancake
f0cca138db * Fix 'bx lr' and 'ldr pc,[pc,#]' code analysis for arm
* Added 'ata' command to specify a list of valid traceable adddresses
* some initial work on r_db.. iterators not yet supported
2010-06-13 11:59:17 +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
8a40844199 * List cmd plugins when ':' command is executed
- Added ->desc field in RCmdPlugin
2010-06-03 11:53:42 +02:00
Nibble
e9e8740a62 * Build
- update pkgconfigs
  - dont run rpathdel on tests
  - build r_crypto
* Bindings
  - Fix vapis (add missings headers r_list.h, r_types_base.h)
2010-05-29 14:04:50 +02:00
pancake
c8d637a26a * RAsmHandle -> RAsmHandler.. Same for RBin
- Define RAsmHandler in r_asm vapi
* Random code cleanup
* Define RHex.str2bin in rutil vapi
2010-05-26 00:59:10 +02:00
pancake
76e52fdeb0 * Added install-symlink (0.3s vs 3s) faster install for devel
* Added 'S' key in visual mode (step over)
* Safer 'dcc' and 'dcr' commands using step over if necessary
  - Skip current instruction (do not lock on calls, rets..)
* Implement step over functionality
2010-05-24 17:51:51 +02:00
Nibble
9a76d39a7a * Add optional libgmp dependecy
* Update configure
* r_big
  - Prepare big.c to add gmp code
  - Implement r_big_{new, free} with libgmp
* r_anal
  - Change the type of {bb,fcn}->fingerprint to RNumBig
* r_flags & r_core
  - Add cmd 'af-*' which removes all flags
2010-05-24 11:15:32 +02:00
pancake
087ce48d42 * Implement r_big_{new,free,mod,set64,set_str}
- r_big api is now argument safe, you can do a.add(a,b);
2010-05-24 02:27:05 +02:00
pancake
7902cb417f * Initial import of r_big - big integer api
* Handle cfg.bigendian in core->assembler
  - fixes powerpc big endian disassembler
2010-05-24 01:31:22 +02:00