Commit Graph

110 Commits

Author SHA1 Message Date
pancake
850045c329 Fix many bugs noticed during the training course
Fixed ragg2 -e segfault
Fix use of ragg2 -p
Fix memleaks and null derefs in rio and rsocket
Fix some build warnings
Fix the segfaults found in the ELF parser
Dwarf parsing is only done if bin.dwarf is true
2012-09-22 20:32:19 +02:00
pancake
621c0ae0eb Fix cmd.repeat on empty lines in prompt
Fix some issues on the RIO layer (added tests)
Fix #<hash><space> issue (>0 length)
2012-09-21 02:25:44 +02:00
pancake
c303848696 Add --enable-cparse and rename --without-debugger to --disable-debugger 2012-09-12 19:35:27 +02:00
pancake
17250ee357 Add api to set config keys as readonly
Handle apk:// from the r_io.zip plugin
Suffix android builds with git version
Fix r_sys_rmkdir
2012-09-07 10:07:41 +02:00
pancake
62b2518250 Add support for keywords of half-byte, fix iova bug in search
Add support for nibble-level search keywords
Fix rio.va search issue (r_io_read_at is broken)
2012-09-07 04:12:24 +02:00
pancake
3861772e6d Initial implementation of r_io.zip plugin
Allows to: r2 zip://foo.apk//classes.dex
Honor LDFLAGS in r_bin
Fix filename issue in r_io_redirect
Add testing on-activate event in r2w2
2012-09-07 03:26:38 +02:00
pancake
93b9d8308a Fix io.cache test case 2012-08-20 10:07:21 +02:00
pancake
ad4e8b0d74 Add 'id' command to show debug info
Use r_core_read_at() instead of r_io_read_at() in core
Another spurious r_io patch!
2012-08-15 02:15:37 +02:00
pancake
6ca052291a Add 'agv' command to view graphs with cmd.graph
In Visual mode it's executed by pressing 'V'
Fix a bug in RIO on OSX debugger
2012-08-14 03:21:31 +02:00
pancake
10b4b5546c Fix resize command and more make race conditions 2012-08-14 01:25:50 +02:00
pancake
c86e1c430f Lot of bugfixes for io and test suite
Anonymous macros are working again
Broken analysis functions are added too
Do not pipe to stderr
Fix parsing of comments and quoted commands
Fix oneliners
Add 'pz' (print ascii until zero) command
Show hits counter with searchhits
Fix IO when no maps and sections used
2012-08-13 13:16:06 +02:00
pancake
86c4f031d8 Implement visual diff and fix many bugs in r_io
Added 'cc' command to compare bytes with column hexdiff
Added r_print_hexdiff() public api
Added diff.from and diff.to eval configuration variables
Visual 'D' used to setup the visual diff offsets
Press 'c' to enable cursor in visual diff
Press '<tab>' to cycle between diff.from and diff.to
Use RCore's RNum from RConfig
Fix bug in r_core_read when io.va and sections used
Fix bugs in r_io_maps and io.va
Multiple files can now be opened and compared with mapping
2012-08-13 04:33:01 +02:00
pancake
28428438f6 Lot of build fixes for --as-needed and mingw32
Fix z80 assembler
Add r_sys_truncate() for portability
Fail build if tests compilation is wrong
2012-08-10 11:35:38 +02:00
pancake
a2ebdcb650 Fix memleaks, nullref and undef (clang-analyzer)
Fix multiple inclusions of mk files
2012-08-08 17:19:48 +02:00
pancake
41a230ddf7 Add p=?, rax2 suports negative values and more
- Support negative integer values in rax2
  - Fix column selection draw in r_print_hexdump
  - Implement p=p and p=e commants
  - Disallow visual insert if file is readonly
  - Similar to pZ, but
  - Honor -w flag to create file if possible
  - Use new r_io_create() api
  - Add scr.sparse to show hexdump in sparse mode
2012-07-06 02:17:44 +02:00
pancake
637e8c92e5 * Fix MZ check() (fixes PE64+ id in r_bin)
* Add io->bits into RIO class
* OSX r_io debug now honors io->bits
  $ r2 -b 32 ls  # debug 32bit ls
  $ r2 -b 64 ls  # debug 64bit ls
2012-05-30 01:35:41 +02:00
pancake
1947f0dece * Fix o- segfault
- Problem in r_io_desc_free called twice
* Compact ??? help
* Random indentation fixes
* Added support for binmask searches
  - /x 123456 ffc0e3
* Added BLOCK and BYTES in r_core_sysenv_begin()
* Hacky fix for autoblocksize with pw
2012-02-09 01:38:16 +01:00
pancake
fd6388de60 * Show error if no hud file found
* Fix 'o file 0xaddr' parsing issue
* 'om' now works without size (file size)
  - fixed help message
* Use xor'd byte in r_io_desc_new ();
2012-02-08 00:45:06 +01:00
pancake
d2ac74699b * Honor r_io_map in r_io_read()
* Rename r2 -H as -hh
* Add r2 -m to specify the load map address
* r2 - is an alias for r2 malloc://512
* Add rxvt-unicode ansi keycodes for HOME/END (must test)
2012-02-07 00:44:46 +01:00
pancake
990d616e13 * Add 16 segment addressing mode
- e asm.offseg=true  : show in disasm
  - ? f000:1345        : calculate value
  - s c000:1400        : seek to segment:address
  - also supports 0xf000:0x123
  - segment is 32 bit instead of 16 #fun
* Add rudi_s patch to pass write_cache test
* Fix crash in r_io_free
* Move r_core_yank_to into yank.c
2012-02-05 01:14:09 +01:00
pancake
f6e36687ed ** Apply Simon Ruderich patch with few modifications
* libr/bin/bin.c: Temporary solution to fix malloc://
* libr/bin/t/test_create.c: Add missing return
* libr/bin/t/test_create.c: Fix gcc warning
* libr/core/cmd.c: Fix read from uninitialized memory
* libr/io/io.c: Fix uninitialized variable
* libr/print/print.c: Prevent invalid read
* libr/util/buf.c: Don't return free()d memory in r_buf_mmap()
2012-02-04 23:25:10 +01:00
pancake
0c5a3834f4 * Fix build
* Apply 7 patches from Simon Ruderich
  - Fixed some really tiny bugs. Cool!
2012-02-01 11:49:46 +01:00
pancake
840550aa3a * Add asm.tabs for bearuty for free (enable by default?)
* Apply @l0gic patch for ELF parsing segfault
* Improve a lot the startup time by using r_file_mmap
* Fix build on osx
2012-01-26 03:18:45 +01:00
pancake
997a6dbd14 * Apply patch from @w_levin fixing lot of memory leaks - Thanks! 2011-12-16 16:33:06 +01:00
pancake
f1515c812b * Fix build 2011-11-29 09:46:41 +01:00
pancake
ee665da38e * Fix load of object elf files (kernel modules too)
- thanks Sebastian Reichel for reporting!
* Use O_BINARY in open() on windows
  - Will this fix the disassembler problems on w32?
2011-11-29 04:25:18 +01:00
pancake
2db05920e4 * Fix segfault in r_io when io->va = 0
* Fix overflow in r_cons
* Implement dtg with proper dot format output
* Use "f name 1 off" instead of "f name @ off" in dr*
2011-11-25 09:40:28 +01:00
pancake
7c2a6e63b4 * Initial implementation of r_debug_map_protect()
- Bind to dmp command
  - Only w32 + osx, needs more work
* Added new api r_graph
* Added dtc and dtg
* Some minor makeup in RList
2011-11-25 04:32:32 +01:00
pancake
7b093a3ed5 * Fix all dangerous bugs reported by llvm-analyzer 2011-11-14 22:46:23 +01:00
pancake
75290251da * Add initial support for plan9 binaries
- supports x86, arm, ppc, sparc, mips
* Use r_cons in r_core_bin
* Fix link of rabin2
  - Use r_cons_flush()
  - Refix ehdr issue
* r_io_size() now ignores va
* Add R_SYS_BASE
* Move r_anal_get_fcn_get into fcn.c
* Some more fixes
2011-11-12 04:51:45 +01:00
pancake
85f5829be6 * Make oxfoo1m3 crackme load correctly
- Do not find strings in binaries with no data sections
  - Add program header section underlaying the rest of sections
* Do not newline when gotoxy'ng
  - visual mode is now smarter
* New ? commands
  - ?p = show physical address
  - ?S = show section name for given address
* Initial refactoring in r_io to make section overlaps happy
  - Those changes are experimental and can lead to problems
  - Do not iterate prev
  - Do not sort by offset
2011-10-25 20:30:05 +02:00
pancake
510c08f4e4 * Do not use strcpy/strcat/sprintf
- There are still some 3rd party files that require update
  - Makes OpenBSD linking less verbose
2011-07-06 03:01:21 +02:00
pancake
aa236eb063 * Finally fix a segfault in the htflags implementation
- This was workarounded to work incorrectly
* Fix build on OSX of the dalvik plugin for r_asm
* Other minor random checks
2011-06-29 00:36:52 +02:00
pancake
b66a9cdd42 * Fix r_io_cache
- Added test/cachetest
2011-06-22 00:19:02 +02:00
pancake
535a2aa713 * r_asm_disassemble use _CONST_ut8* buffer now
* Split core/cmd.c into disasm.c and core/visual.c into vmenus.c
* Fix some warnings reported by valgrind
* Chop instructions disassembled by udis86
* Fix visual prompt display in debugger mode
* Added 'pdi' and 'pdf' commands
  - Used to print just instructions or lengths
  - Documented via 'pd?'
* Added initial work on a test suite for r2
  - Spot a crash!
2011-06-04 03:14:04 +02:00
earada
8d8faea38b * Use RList int io_sections
* Fix core_server return value
2011-04-19 14:43:48 +02:00
pancake
a16f3f27b4 * Implement S- command (remove sections)
- by index, offset or all (*)
* Fix block_read() issue with io.va
2011-04-19 00:59:16 +02:00
Eloi Sanfelix
1c29358245 Fixed io_write ignoring map select return value. 2011-04-07 09:35:03 +02:00
pancake
8b27aa6723 * Make io.gdb plugin work again
* Fix more unused var bugs
2011-04-06 12:26:19 +02:00
pancake
fd8545e76e * Fix some valgrind warnings 2011-04-06 11:35:18 +02:00
pancake
4fad96ecbb * Make r2-swig happy without valaswig
* Add r_io_raise() and use it in the 'o' command
  - Allow to raise the file handle priority
2011-02-16 09:29:09 +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
pancake
7bb5b2d46d * Many bugfixes in RIOMap handling and 'o' command
* Added util/bitmap (hashmap of bits)
2011-02-07 09:46:01 +01:00
pancake
ad027ba004 * Apply patchsets from Glyn Kennington (Thanks!)
- Added new method r_io_shift (start, end, move)
  - Added 'r' command (like in r1)
  - Fix parallel builds with -j>1
2011-02-05 12:51:37 +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
pancake
afb634f97d * Add support for ppc64 disassembler 2011-01-23 18:19:03 +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
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
39f77a430f * Huge r_io refactoring
- Many things are broken in this commit
2011-01-20 22:52:16 +01:00