Commit Graph

193 Commits

Author SHA1 Message Date
pancake
e48b9b2f30 Add cfg.sandbox functionality
f.example: $ r2 -c=H -e cfg.sandbox=true -
2012-10-20 00:31:18 +02:00
pancake
7e9af106bb Implement RAnal.fcn_del_locs() to fix Vdu and af-
New commands: fx and fxd to show contents of flags
Fix pZ-pz help message and stuff
fF in visual is now nN
nN in visual has been deprecated
sfF also renamed to snN
sn renamed to so
e scr.fkey is now scr.nkey
Beautify the disasm loc functions
Toggle breakpoints with 'b' in visual
2012-09-28 02:20:52 +02:00
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
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
6d66f627b3 Fix bug in r_file_mkstemp
Use /data/local/tmp as default TMPDIR for android
Fix segfault in http server shutdown
Fix http.browser for android
2012-09-06 12:47:32 +02:00
pancake
d3eea7b431 Fix build and use proper check for non-root android 2012-09-06 11:22:01 +02:00
pancake
be247348b5 Rename r_file_exist into r_file_exists 2012-09-06 08:59:13 +02:00
pancake
46e29afb98 Initial working web ui: r2 -c =H /bin/ls
Autodetect osx, win, linux and android browsers
Default port is 9090
Add support for local networking in RSocket
Add r_str_unescape() helper function
Fix htmlgraph.sh script.
Added wwwroot in shlr/www
Swap eval/cmd load order in r2
Add r_core_cmd_str_pipe()
Use RCons in 'fs'
2012-09-06 03:12:54 +02:00
pancake
e2af4c93d4 Added htmlgraph.sh as a cmd.graph html5 graph backend
Many fixes for agv, rcons->html
2012-09-05 03:25:03 +02:00
pancake
5c236fa0e3 Add mips pseudocode, anal.hasnext, fix anal bugs
Better mips analysis
Implemented mips pseudocode plugin
Change asm.parser in asm.arch callback
2012-08-31 11:45:06 +02:00
pancake
476e3b0082 Fix consgrep segfault and do changes in print cmd
Add python print buffer (pcp)
Use psw instead of pS for wide strings
Add dir.types config variable
Fix segfault in RConsGrep
2012-08-28 17:50:49 +02:00
pancake
e46efa8a1d Initial implementation of r_bin_size (rabin2 -Z)
Changes in the disasm loop to support continuous fun
Fixes disasm after opcode payload
Added RConstr code in r_util (not yet used)
RBinSize implemented for elf, mach0 and plan9
Fix build
2012-08-23 12:46:55 +02:00
pancake
5aa93db5a4 Better command parsing and minor dwarf info
Dwarf info with null filenames are now supported
Fix quoted commnads parser
Quoted strings can now be temporary seeked "x"@239
Fix semicolon separated list of commands
Fix and use the base64 encoder/decoder
Siplify the config.c
Fix r_str_replace
2012-08-19 03:28:17 +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
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
a2ebdcb650 Fix memleaks, nullref and undef (clang-analyzer)
Fix multiple inclusions of mk files
2012-08-08 17:19:48 +02:00
pancake
9a1a2fc981 Fix anal.x86.udis86 and asm.arm.winedbg plugin names
Add file.analyze eval config variable from radare1
Guess base arch anal.plugin when asm.arch is set
2012-08-08 10:31:17 +02:00
pancake
afbda180d5 Add visual search and enhace search output
- e search.show = true # by default
- add keyword type (string, binary)
- visual search only works in cursor mode
2012-08-02 01:50:39 +02:00
pancake
c39d68ad3e Remove some outdated TODO/XXX comments
Add 'dbs' command to swap/toggle breakpoints
Bind debugger keys to key.fX visual bindings
Use --swig in r2-bindings. But still broken
2012-07-16 11:39:43 +02:00
pancake
5bf36a6b74 Fix sC, remove printfs and add more cfg descriptions 2012-07-12 04:21:56 +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
58dfc4051d * Remove max blocksize hard limit
- Now configurable thru the io.maxblk var
* Add support for huge dumping with 'wt'
  - As requested by nics
2012-04-21 14:28:53 +02:00
pancake
126223038c * Add Simon Ruderich patch adding pager support to r_cons (thanks!)
- Add new cfg.pager configuration variable
  - by default no pager is used (cfg.pager is empty).
2012-02-05 02:39:04 +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
5deffac04f * Fix nullpointer checks in p/bin p9, pe and pe64 when
using virtual files like malloc:// (thanks @vext01 for reporting)
* Add search.in=block
* Fix search ranges in search.in=file (fixes r2-regressions test)
2012-02-01 22:42:38 +01:00
pancake
6ee952c388 * Fix make install for hud (thanks l0gic)
* Enhacements for the r_cons_hud
  - double-ESC to quit menu
  - tab and up/down arrows select row
  - first row is executed if enter is pressed
* Add ?y[ynkm] to
  - ?iy ?in     ask user with yesno dialogs
  - ?im msg     show message
  - ?ik         press any key
* Add hud.once eval var to run hud forever
* CC != CC*
2012-02-01 02:22:43 +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
f908b15fb5 * Fix android compilation
- Fix static build
  - Fix dupped symbols
* Fix all errors reported by clang-analyzer
  - Some null dereferences
  - Some uninitialized variable uses
* Fix all important warnings from the farm
  - Remove *all* uses of alloca
  - Fix many %llx format string portability issues
* Fix manpage typos reported by lintian (thanks sre)
2011-12-06 00:27:57 +01:00
pancake
048e9ea8ce * Fix some warnings related to alloca(), %llx and O_BINARY for w32
* sync sdb
* Add some more eval var descriptions
2011-11-29 12:28:02 +01:00
earada
62c650b2a0 * Add graph.font=Courier eval var
* Use R_TRUE/R_FALSE instead of R_CORE_BIN_RADARE/R_CORE_BIN_PRINT
* Add notepad as windows editor by default
* Add 'T' menu at visual mode to show comments and anal info
2011-11-23 02:29:09 +01:00
pancake
85b952966c * added 'afi' to show info of functions
* afl is now less verbose
* Add /v2 /v4 /v8 and remove /q
* Rename /a to /r
* remove search.asmstr and use /a and /c
* Fail build of bindings if somethings goes wrong
* Add sys/static.sh
2011-11-22 15:12:29 +01:00
pancake
c620b0dd3f * Fix search when io.va=true
- Add search.in = file, section, raw
* Set io.va=false rbin cant identify file type
* Show progress info in search
2011-11-19 02:49:11 +01:00
earada
242f9c56d8 * RIOUndo now uses r_list API
* List mount points in radare commands use new syntax
* asm.bits triggers syscall_setup
* Fix null pointer dereference in RCore.bin_load
2011-11-15 23:26:45 +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
0f271a8bac * Added api to get opcode descriptions
- r_asm now depends on r_db (uses r_pair aka sdb)
  - r_asm_describe()
  - install opcode descriptions
  - Use ?d to get description of opcode (uses asm.arch)
* Add 'fl' command to get length of flag
* Fix some warnings in anal.sparc plugin
* Add new assembler directives
  - .int8 (alias of .byte)
  - .int16 (alias of .short)
  - .int32 and .int64
* Fix memory leak in r_core_disasm()
* Add accessors for RAnalFcn.{refs,xrefs,vars,bbs}
  - Updated bindings
2011-11-12 01:52:31 +01:00
pancake
b38552af6b * Only change va when needed 2011-11-11 21:15:47 +01:00
pancake
88c8b08f7a * Fix various memory leaks (thanks Ender for reporting!)
* Add e dir.magic variable
2011-11-11 17:14:09 +01:00
pancake
f5e374e235 * Make w32dist ship sdb and fortunes
* Add support for relative R2_PREFIX for w32
2011-10-24 12:07:12 +02:00
earada
4df1ec9a84 * Complete some config var options descriptions 2011-10-16 19:38:26 +02:00
pancake
e9d1dcb4ec * Fix make w32dist
* Update manpages
* Added r2 -H for env and files help
* Add rarun2 -h
* Show assembler/disassembler features in rasm2 -L
* Add opcode 'mov dword [ebp-12],4' to x86.nz
  - Make t/test.nz work with x86.olly (32bit only atm)
* Fix unknown os issue with tiny-pe files in r_bin
* Fix some plugin names build fails in mingw32
* MAGICPATH renamed to R_MAGIC_PATH
* Add another experimental way to generate gir files
  - Added dummy test.js for nodejs
* Build python-dist in farm

--HG--
rename : man/rarc2-tool.1 => binr/old.rarc2/rarc2-tool.1
rename : man/rarc2.1 => binr/old.rarc2/rarc2.1
2011-10-12 03:24:19 +02:00
pancake
51d6e83c93 * Fix mingw32 build 2011-10-11 01:35:21 +02:00
pancake
a43068bde0 * brainfuck debugger is finally usable
- Added breakpoint and code analysis plugins for bf
  - *mem++ != mem[0]++
  - Full register get/set support
  - Support for step and continue-until-syscall
  - Work in progress breakpoint support
* Added bfvm_reset() hooked to plugin->kill
* Enhacements in r_core and r_debug for better debugger support
  - Added plugin->step_over delegate
2011-10-09 04:15:32 +02:00
pancake
4ea6ee9873 * Add new flags to r2
- -D : enable debugger mode for non native debuggers
  - -c cmd : execute a command before showing prompt
* Initial import of the bfvm (brainfuck virtual machine)
* Initial dummy implementation of the brainfuck debugger plugin
  - Needs to be integrated with bfvm to work
* Added doc/brainfuck
2011-10-07 03:10:44 +02:00
pancake
23936cfbe5 * Add an REgg instance into the RCore class
- Make r2 -P use the r_egg api instead of the oldie rarc2
2011-10-04 10:10:00 +02:00
pancake
677a499440 * Add get_main() for mach0 (32,64)
* Proper use of arch/bits. debugger works fine now for osx-32/64
2011-09-22 09:52:00 +02:00
pancake
0217c146ef * Fix x86.nz -> push [esp+N]
* Use pw instead of px in debugger stack view
* Disable stackptr by default
* Add OSX-32bit debugger register map
  - Fix support for debugging 32bit bins in 64bit OSes
* Implement r_egg_run() -- just in time execution
* Fix r_egg string construction and argument passing
  - Still needs more work, but at least some hello worlds work
2011-09-21 19:51:09 +02:00
pancake
0cca23f7a5 * Fix anal vartypes definitions
* fcnstore working, results slower than with traditional method :(
  - disabled by default
* Fix R_BETWEEN signature
* Add /q to search for qwords
* scr.fkey = hit by default
2011-09-14 03:47:30 +02:00
pancake
7319208c8f * More visual fixes for the comments in disassembly
- Added asm.cmtright=true eval config variable
* Add missing r_magic.deps
2011-09-12 03:26:32 +02:00
pancake
323441c122 * Initial import of r_magic
- Imported code from OpenBSD trunk
  - Remove the elf part (-1KLOC)
  - Some refactoring in order to be more r2-like
  - fixed warning messages
  - readdir one can be dangerous /cc @vect01
  - Remove libmagic dependency
* Rename asm.case into asm.ucase
2011-09-10 01:30:03 +02:00