Commit Graph

648 Commits

Author SHA1 Message Date
deeso
1fbc7f2168 Added load_bytes, Pushed curplugin down to RBinObj, Reworking the RBinFIle loading to accomodate RBinObj reworked how all bins are loaded. Needed to hack IO to make
this work with rbinfiles and rbinobjects.

Conflicts:
	libr/bin/bin.c
	libr/bin/p/bin_te.c
2014-05-13 21:54:18 -05:00
jvoisin
818a907bf4 Fix CID 1135070 and some GCC warnings 2014-05-11 13:41:21 +02:00
jvoisin
f664e91c1b Fix CID 1135045 and some GCC warnings 2014-05-11 13:34:55 +02:00
jvoisin
e0024940ca Fix CID 1134851 2014-05-11 13:31:59 +02:00
jvoisin
4fbebae5f6 Fix CID 1134511 2014-05-11 13:28:39 +02:00
jvoisin
914a0411ca Fix CID 1134506 2014-05-11 13:27:26 +02:00
jvoisin
76fbd4119c Fix some gcc warnings 2014-05-08 23:20:42 +02:00
pancake
773b033620 Fix negative/huge mallocs in PE parser and fix invalid fd close 2014-05-08 01:32:06 +02:00
Anton Kochkov
53d58db5bb Fix CID 1211145 2014-05-06 01:23:06 +04:00
jvoisin
3fbd1645d7 Fix CID 1211149 2014-05-05 17:44:08 +02:00
jvoisin
bdb2a4b568 Fix CID 1211150 2014-05-05 17:40:55 +02:00
Anton Kochkov
f762584982 Fix CID 1134991 2014-05-04 18:30:17 +04:00
Anton Kochkov
2d03b0a6f6 Fix CID 1134867 2014-05-03 04:29:10 +04:00
Anton Kochkov
14fb1b2b6a Fix CID 1134850 2014-05-03 04:29:10 +04:00
Anton Kochkov
b91a555475 Fix CID 1134812 2014-05-03 03:40:04 +04:00
deeso
14354feb61 fixed MMap Read-Write issue in io plugins and RBuf 2014-05-02 16:43:47 -05:00
deeso
3adcb54f17 Overhauled how files are loaded. Now *all* files use an IO plugin the default one is mmap'ed 2014-05-01 20:13:57 -05:00
jvoisin
7be0331d6d Fix CID 1134512 2014-04-30 01:37:27 +02:00
Anton Kochkov
7b3db8b1b1 Fix CID 1171364 2014-04-30 02:38:04 +04:00
Anton Kochkov
f78e258b52 Fix CID 1181834 2014-04-30 02:30:08 +04:00
Anton Kochkov
47e5524be1 Fix CID 1191355 2014-04-30 02:19:55 +04:00
Anton Kochkov
b483d9189c Fix CID 1135070 2014-04-28 22:40:22 +04:00
pancake
b49195f2df Fix lot of warnings 2014-04-28 11:53:22 +02:00
Anton Kochkov
afedcc0074 Fix CID 1135011, 1195065, 1134730, 1134754, 1134907, 1134758 2014-04-27 01:06:13 +02:00
Anton Kochkov
c635b5fff1 Fix CID 1134736 2014-04-26 04:02:29 +04:00
Anton Kochkov
51736bd435 Fix CID 1134485, 1134486 2014-04-26 01:53:23 +04:00
pancake
91e4f7659b Fix heap overflow in io/cache.c (Thanks @nixerr) 2014-04-25 03:03:17 +02:00
deeso
d5908941fb Steps toward fixing the reopen of a file being debugged 2014-04-24 18:21:40 -05:00
deeso
c6a7faad77 fixed the bug with the insane fuzz command 2014-04-22 23:06:00 -05:00
pancake
836803d786 Sdbize RBin.list_archs(). Expose addrinfo in 'k bin/fd.#/addrinfo/*' 2014-04-23 03:57:13 +02:00
Anton Kochkov
1956dc669d Fix CID #1135135 2014-04-20 03:38:01 +04:00
Adam Pridgen
af800c4b1b fix to wen because the size caused an incorrect allocation 2014-04-08 17:47:26 -05:00
Adam Pridgen
b182b23b40 fixing the following coverity issues, which entails the issue with print and most of the java issues:
1196398, 1196403, 1196402, 1196401, 1196400, 1196413, 1196415, 1196414, 1196411
2014-04-05 00:39:17 -05:00
Adam Pridgen
3ddac2d893 Fixed yank from file RCoreFile swap, and fixed logic bug in io.c that would prevent file swaps 2014-04-02 13:10:26 -05:00
Adam Pridgen
f8679bb888 Fixed yank from file RCoreFile swap, and fixed logic bug in io.c that would prevent file swaps 2014-04-02 13:10:03 -05:00
condret
cd92dfee31 fix an io-map bug
this makes the wall of 0xff at the end of this video less scary : http://runas-racer.com/foo/io_bugs.mp4
2014-03-31 03:07:50 +02:00
Adam Pridgen
6a50f55834 Fixing some of the coverity issues 2014-03-28 12:17:23 -05:00
Adam Pridgen
09fa5cf10c Added extend to io support, now files can be extended, b00y4! 2014-03-24 22:57:36 -05:00
Adam Pridgen
940db1cf75 Added the ability to yank a file into a buffer without loading it 2014-03-20 23:25:39 -05:00
Adam Pridgen
b144099451 RCore yank_buf is now a RBuffer with a defined API. Tweaked RBuffer so it reallocs buffers correctly. Modified io_zip to write through on new files. 2014-03-20 13:09:37 -05:00
Fedor Sakharov
977b5fb706 io_ihex: Lets remove infinite cycle 2014-03-11 20:41:40 +04:00
pancake
b9d7533137 Fix overflow in r_socket_http_get 2014-03-10 00:55:57 +01:00
pancake
d664e7b7de Initial SDBization of RAnalMeta... 2014-03-04 12:23:52 +01:00
pancake
d1dd21ea9e Fix statically link of libgdbr 2014-03-03 19:09:40 +01:00
pancake
ffa6f94ff2 Fix linkage of gdbr on w32 2014-03-03 18:57:21 +01:00
defragger
bf7d50156f added implementation that uses libgdbr
Signed-off-by: defragger <rlaemmert@gmail.com>
2014-03-03 17:19:33 +01:00
pancake
f3a83d63f3 Fix self:// on Linux 2014-03-02 04:19:36 +01:00
pancake
9ec418ec37 Fix rap:// and enhace RConsMouseWheel support 2014-03-02 00:31:35 +01:00
pancake
d257493fb3 Fix some warnings 2014-02-24 12:18:07 +01:00
pancake
9b9b04576f Purge all r_lib references 2014-02-20 22:16:23 +01:00
pancake
6f2baaa202 Use strncmp instead of memcmp to check the io uri 2014-02-18 03:03:13 +01:00
Adam Pridgen
e5a2428cae zip write through is now supported 2014-02-17 09:25:58 -06:00
pancake
90264229c9 Add Vo, fixes in $sys in RAsm, new io.self plugin, initial work on preloaded r2 2014-02-10 03:31:12 +01:00
pancake
e421d5bb56 Bump sdb to fix memleaks 2014-01-31 18:26:11 +01:00
pancake
5f14f7290b Add --with-syszip configure flag to use system libzip+libz instead of shlr/zip 2014-01-30 01:45:08 +01:00
Adam Pridgen
a79ea9dd34 Fixed coverity issues: 1164785, 1164787, 1164788, 1164790-1164794 2014-01-27 08:34:26 -06:00
Adam Pridgen
e6fe3354d9 Fixing coverity issues for io_zip, hanging caused by infinite loop in disasm.c,
and io map collisions (which adds file.loadalign, file.loadmethod (append or fail),
and file.suppresswarnings.
2014-01-25 23:48:22 -06:00
pancake
f287cfb413 Fix build 2014-01-24 11:13:17 +01:00
Adam Pridgen
70e832b35e Adding the option to open more than one file via a plugin. Now all the files in a zip can be loaded using zipall:// uri. 2014-01-23 21:51:39 -06:00
pancake
48273ec2ed Fix #559 - Fix segfault (workarounds) 2014-01-21 15:40:10 +01:00
pancake
d86bf57ca4 Remove more r_lib references 2014-01-18 02:52:49 +01:00
Adam Pridgen
6058b7b4a8 coverity fixes 2014-01-14 10:40:18 -06:00
pancake
d7d3965405 Fix debugger for Debian Squeeze 2014-01-14 03:23:03 +01:00
pancake
d2ce7c1130 Some polishments for io_zip.c 2014-01-13 00:50:04 +01:00
Adam Pridgen
415a77dca0 Java can now load multiple bins into radare space, and analyse the different bins.
See libr/bin/p.bin_java.c libr/anal/p/anal_java.c for the hacky details.
Fixed the coverity issue.
2014-01-12 17:36:47 -06:00
Adam Pridgen
deb58b637a Added index open of files in zip:// uri and fixed entrypoints reported to include only static methods, main, the constructors 2014-01-10 16:30:47 -06:00
pancake
98053a806d Fix bjam build 2014-01-03 00:43:22 +01:00
Adam Pridgen
bc2ee1f869 Improved plugin analysis allowing plugin developers to define custom
analysis algorithms.
Java analysis plugin is re-written to leverage this capability.
Added some new R_ANAL types, and some of the respective operations and strings.
Updated io-component files to get file size and info
2014-01-03 00:28:46 +01:00
pancake
38fc28f960 Added more Jamroot files 2014-01-03 00:13:46 +01:00
pancake
13ea5e467d More Jamroot files and move vm out 2013-12-31 15:57:52 +01:00
pancake
e0f436415f Fix #493 - Segfault in rafind2 with hex:// 2013-12-29 02:47:46 +01:00
pancake
84f579264f Fix build 2013-12-22 04:37:05 +01:00
Roi Martin (@nibble_ds)
3f5ebd9d16 Fix #458 - Negative baddr
Fix r_bin_get_vaddr() (needs further testing due to changes in r_io)
2013-12-19 19:43:44 +01:00
pancake
f664821d8e Fix loading the RBin information of PIE bins when debugging 2013-12-17 02:10:13 +01:00
pancake
a03dd04c42 Fix r_sys_pid_to_path for FreeBSD (thanks vsp) 2013-12-11 12:32:15 +01:00
pancake
2dff3946c4 Fix io.gdb license 2013-12-10 04:19:43 +01:00
pancake
bbe6e8c8a2 Add license to RBin, RDebug and RIO plugins 2013-12-10 04:19:04 +01:00
Adam Pridgen
b2c194014c Updated zip file listing as requested. Could not use io->printf bc it did not flush properly after use 2013-12-03 04:51:54 +01:00
Adam Pridgen
f14f905fe0 updated zip_io so that files are accessible via script 2013-12-03 04:51:49 +01:00
pancake
180fd38163 Fix 'cg /' crash and only use numeric values in web yank (thanks zlul!) 2013-11-28 18:46:58 +01:00
pancake
21c3e01ff5 Fix #389 - Fix segfault in ptrace://-1 2013-11-26 16:16:06 +01:00
pancake
a70bc47d94 Fix malloc://-1 2013-11-26 02:04:12 +01:00
pancake
a6f4dbca47 Fix #384 - Dupped filedescriptors 2013-11-23 02:44:06 +01:00
Adam Pridgen
a5ad388eb5 Cleaned up how the pd command process input. Added support for setting [len] [asm.arch] [bits] for all pd commands. 2013-11-22 08:45:13 -06:00
pancake
58870cff95 Fix r_io_desc_new macro. It was breaking support for multiple files 2013-11-19 03:02:26 +01:00
Fedor Sakharov
13547a0bbf Fix #370 - Some memory leaks
Fix memory leak in r_config_new.
  cfg->nodes->free should be a custom function that frees RConfigNode
  structure correctly, but not the ordinary free.
Fix memory leak in r_anal_new.
  In r_anal_free need to call r_meta_free to free the
  whole RMeta structure, not only it's data list.
  The r_meta_free doesn't seem to have any leak itself.
Fix leaking anal->hints.
Fix memory leaks in r_cmd_free
Fix memory leak in r_cmd_plugin_init
Fix memleak in r_lib_new
Fix memory leak in r_io_plugin_init
Fix memory leak in r_debug_trace_new
Fix memory leaks in r_io_new
Fix memory leak in r_graph_new
Fix memory leak in r_sys_getdir.
  Note: calling getcwd with dir=NULL is a Linux-specific extension
  of POSIX, not sure if works on other non-windows platforms.
Fixes a typo
2013-11-19 01:51:40 +01:00
pancake
aaf444aaff Fix mingw32 build of libzip 2013-11-15 01:25:34 +01:00
pancake
7112a7ded0 Fix r_io_desc_new issue 2013-11-15 00:04:17 +01:00
pancake
30ebc8b8b3 More work to make zip plugin work 2013-11-14 23:22:56 +01:00
pancake
c1dd901413 Fix zip linkage (still wip) 2013-11-14 13:57:01 +01:00
Adam Pridgen
0bc95a2fc4 Added the necessary libzip and libz files for opening zip files and reading and writing to them from memory via uri, added zip, apk, jar 2013-11-14 04:54:50 +01:00
Adam Pridgen
532f420ffa Added fixes to load bins from IO Plugins and Fixed filename extraction so that IO Plugin names are respected instead of extracting then out of the URIs 2013-11-12 04:46:28 +01:00
pancake
e92ee874f2 Fix w32 build 2013-11-04 03:37:43 +01:00
pancake
497cb0e2e1 Fix #57 - 'is' does not work for attached process 2013-11-04 03:30:46 +01:00
pancake
629c64c851 Fix 'dr=' columns width for 64bit registers 2013-10-31 01:53:17 +01:00
pancake
3406d5eb52 Fix visual jmp keys reset and malloc:// write error 2013-10-14 01:12:09 +02:00
pancake
e173008266 Fixes on io maps and fd descs 2013-10-11 03:11:15 +02:00
pancake
903bd49dfd Fix io/cache test case 2013-10-11 00:06:26 +02:00
pancake
32816c4669 Rewrite the code flow analysis logic 2013-10-08 04:58:51 +02:00
pancake
ae97789986 Fix lot of warnings 2013-09-14 14:04:08 +02:00
pancake
9850c0a3c3 Fix some warns and enhace GIT_TAP in makefiles 2013-08-26 01:07:21 +02:00
pancake
707b8b4e40 Try to fix #168 rlang's python plugin not properly linked 2013-08-18 01:30:03 +02:00
pancake
5297304067 Fix gdb 100% cpu and connect timeout bug in socket api 2013-07-24 08:58:10 +02:00
pancake
19314bc27f Better comments in disasm, fix io->size = 0 regression 2013-07-18 23:00:38 +02:00
pancake
5922cfe530 Fix #150 IO issue. 2013-07-18 12:10:52 +02:00
pancake
bc0104563b Initial support for runtime versioned libraries
- This check will ensure you are running the latest r2 version.
2013-06-14 02:51:33 +02:00
pancake
cdea34616d Fix some warnings 2013-06-09 02:55:03 +02:00
pancake
433c1ce26c Fix build 2013-06-09 00:10:16 +02:00
pancake
e68f3999ac Fix #101 r_io_redirect was wrong and causing 'r2 -d ls' to fail 2013-06-08 18:08:17 -04:00
pancake
3f1d3ba146 Better r_str_hash(), Fixes in CCa, Added ?h, Better rbin for BEOS bins
Identify Haiku binaries as 'beos' with noodle()
Fix CCa for non numeric offsets
Use sdb's r_str_hash() instead of old one (much less collisions)
Added ?h command to hash strings
CCa now appends instead of replacing comments
Do not mark as static if bin links to libs
2013-06-07 10:26:37 +02:00
capi_x
c9eb90adbc Add initial Haiku support 2013-06-06 00:21:52 +02:00
pancake
a21afe4053 More work to deprecate old cparse and use libr_tcc 2013-06-05 09:29:27 +02:00
pancake
74731aa7b1 Minor code cleanup in io 2013-06-04 23:49:28 +02:00
pancake
96accbd14b Begin r_io review. Fix r_socket_http query for xpcshell's httpd.js
- Added libr/io/README in order to documentate the api
- Some minor refactoring and code cleanup in libr/io
- Fix hexdump title
2013-05-31 02:09:45 +02:00
pancake
16ddff4eb9 More work on ESIL, and implement r2 -Desil .. 2013-05-20 03:00:49 +02:00
pancake
4d78e5ee30 Make unix fork behave like w32 (r2 -d a.out == r2 -d ./a.out) 2013-05-06 01:55:09 +02:00
pancake
fb19a8cdd4 Fix debug of 32bit programs on 64bit boxes 2013-04-24 09:46:57 +02:00
pancake
189e5553cc Initial 8051 disasm and ihex:// io plugin 2013-04-09 20:05:36 +02:00
pancake
6fbbb3dea0 Add arch/bits fields in RBinSection (breaks abi) 2013-03-26 23:37:19 +01:00
pancake
ce4382abb7 Use anal-udis86 by default instead of anal-im86 2013-03-19 10:27:57 +01:00
pancake
837489a5ed Faster ptrace io and fixed software stepping in ARM
Fix software stepping in arm
p/io_ptrace now supports /proc/pid/mem io
Added =!help =!mem and =!ptrace to io/ptrace
Hide invalid section sizes messages
2013-03-19 02:36:14 +00:00
pancake
c11bf6c1cb Fix partial IO read, show flags under visual cursor
Show flags in @@ and visual title with cursor
Port 80 is now default for r2 -C
Key 'q' will quit -C mode
Fix visual core_read() issue with chrome
Fix io.va issue in partial reads
Fix r_io_next_section() code
2013-03-18 00:38:04 +01:00
pancake
8f4d23a5ce Initial implementation of io.map plugin 2013-03-12 01:50:55 +01:00
pancake
133f2dc157 Better r2 -L output. Sync spaces with rasm2/rabin2 -L 2013-03-03 03:23:52 +01:00
pancake
bdd616141c Update io_ewf plugin for latest API. Fix in configure 2013-03-01 02:00:22 +01:00
pancake
fc6e799c26 Add pfD (disasm). Fix VI and Vi with+without cursor
Simplify r_print_string
Fix r_io write boundaries
2013-02-25 09:36:07 +01:00
pancake
16bf36e55c Implement http.allow firewall rule
Fix socket transfer for http server
Shorter io descriptions for io_zip and io_gdb plugins
2013-02-25 01:47:55 +01:00
pancake
f37df0d2c6 Fix fatmach0 extract when unknown files are inside
Fix segfault in java class header parser
Fix help message of 'wt' command
2013-01-29 19:39:41 +01:00
pancake
05a2d60270 Fix r_io section load for big binaries (hello chromium!) 2013-01-29 14:56:57 +01:00
pancake
d82c53224f Fix w32 build 2013-01-23 14:50:50 +01:00
pancake
5656505e79 Draft anal_hint. Fix build and fix build (armass.c)
Minor update in the enyo $webui
2013-01-13 03:19:32 +01:00
pancake
60a951e9b1 New io.buffer cache system and refactorized RHashTable
Implement io.buffer for fast IO (work in progress)
Rewrite util/cache.c and use it form io/buffer.c
Refactor util/ht.c and util/ht64.c to reuse code
Various minor fixes in RIO api
cache.c must be rewritten into r_buf for
2013-01-12 04:29:45 +01:00
pancake
35808e31f8 Add io.zeromap to toggle old buggy mode doublemapping file to 0
Add http.maxsize to define the maximum file size to be uploaded
Add http.upget config var (not yet implemented)
2013-01-03 01:43:23 +01:00
pancake
16581dde3f Fix output of 'i'. fix rap:// connect 2013-01-02 03:34:17 +01:00
pancake
9e0ebe9def Handle ^C in rap://, add rap listen command =:9999 2012-12-30 23:40:17 +01:00
pancake
83da070d44 Fix fcn lines in disasm, minor fix in meta
Initial work to fix linux32 debugger on linux64
2012-12-06 03:11:40 +01:00
pancake
475372ec2c Fix archbits in overlap mem, fixes for ad, pd and segmented addressing
Fix invalid wide string identification in 'ad' command
Temporal blocksize syntax ':' has changed to '!'
  - x @ 1024!33
Fix overlapped IO sections handling
Add support for segmented address in temporal seek
Fix disassemlby to print more lines than blocksize
2012-12-06 00:55:22 +01:00
pancake
7a0da18725 Add r_bin.rar plugin, per-section arch/bits, fix in S=
Add Sa to set/get per-section arch and bits configuration
Cache io->section and core->io->section to speed up the Sa
Update r_sys_arch*
Add dummy plugin in asm/rar
Fix lines of S=
2012-11-30 01:06:30 +01:00
pancake
6dadd63c4b Ad od scr.col and cjange more settings
Fix parsing of segmented addresses
Move hud to shlr/hud
Add r_cons_print_clear () for delayed 'clearscreens'
Add blankline option to RCons
Add scr.segoff to show prompt as segmented or not
Add scr.colpos to choose the position of cmd.cprompt
Deprecate old flags code
2012-11-14 03:25:32 +01:00
pancake
b252b34358 Some initial work to support emscripten 2012-11-12 17:13:01 +01:00
pancake
7c1e0c85d9 Support for remote raw commands (client/server)
See the '.:' command
Full integration with awk bindings
Add install make target for the awk bindings
Handle as debug mode if io->file->debug
Fix typo quite/quiet in rabin2
Resolve $pc,$bp,$sp,$a0.. in r_core_num
Minor random fixups
2012-11-05 02:00:34 +01:00
pancake
8270c60a16 flex no longer mandatory, fix ios debugger
Flex is no longer mandatory for configure
Fix overflow in r_core_cmd0
vm_protect works again on iOS (using VM_PROT_COPY)
ptrace-cont is just a detach
fix build with latest ios sdk
2012-10-31 16:37:19 +01:00
pancake
78ce28b980 Fix build on iOS (without debugger) 2012-10-30 18:20:51 +01:00
pancake
31b5036071 add 'io' command and s/--without-ssl/--with-openssl/ 2012-10-26 02:49:33 +02:00
pancake
94b001265a Fix mach0 ehdr header, new $S and $SS vars, Vdr
Show xrefs before comments
cmtright is false by default
Fix ehdr virtual section on mach0 files
Addr 'Vdr' command to rename functions in visual
Add $S and $SS variables (section offset, section size)
2012-10-26 01:33:57 +02:00
pancake
61b0f8e78a Fix build 2012-10-25 21:56:42 +02:00
pancake
1f15df18c4 Fix build and http shutdown, WebUI (afr, pdi), add socket timeout
Fix http server shutdown issue
Add timeout on socket connect
Enhace web ui with 'afr' and 'pdi' commands
Fix segfault in 'afr'
Fix build (thanks @egeektronic)
2012-10-25 21:40:11 +02:00
pancake
1e52015eee Add px[QW], fix segmented io and handle ! pipes
Handle `!` with r_core_cmd_str_pipe
Fix 'afl' output
Add help for 'px' command
Add pxQ and pxW to show one word per line
Fix segmented io with maps and sections
Some test cases got fixed
Add test-r_anal.py
2012-10-25 12:55:28 +02:00
pancake
73a7b77306 Add 'omr' to relocate maps and rm libr/README 2012-10-25 09:48:45 +02:00
pancake
082adc171d Minor fixups 2012-10-24 09:51:56 +02:00
pancake
858c65f239 Add sandbox-kill and disable reopen in sandbox mode 2012-10-22 10:43:10 +02:00
pancake
16e0c555e5 Add 'oo+' and 'o+' commands to reopen in read-write 2012-10-22 10:12:13 +02:00
pancake
e48b9b2f30 Add cfg.sandbox functionality
f.example: $ r2 -c=H -e cfg.sandbox=true -
2012-10-20 00:31:18 +02:00
pancake
3540924f40 Better paralelization of build system 2012-10-04 01:20:00 +02:00
pancake
e8a601fe53 More makefile simplifications (-56LOC) 2012-10-03 16:32:32 +02:00
pancake
69a12884ed Simplify the build system
doc.sw has been moved to radare2-extras
2012-10-03 14:31:35 +02:00
pancake
4ffdaeb04f Fix warnings and refactor 'p' subcommands (pw -> pxw ..) 2012-09-27 19:35:19 +02:00
pancake
dba5de4416 Fix build (R) 2012-09-26 23:58:55 +02:00
pancake
7cdb0dc0d7 Fix w32 build 2012-09-26 23:30:46 +02:00
pancake
5ad9ae97ed Fix some bugs (nullptr, memleak) reported by clang-analyzer 2012-09-26 10:01:43 +02:00
pancake
757d692e19 Implement support for mach0-x86-32/64 main finder
Fix segfault when loading a plain file after io'd one
2012-09-23 21:42:10 +02:00
pancake
51c4610090 Fix segfault in zip:// and dex (thanks @pof for reporting) 2012-09-23 13:30:28 +02:00
Roi Martin (@nibble_ds)
b4ccaba2db Fix dbg in x86_64 2012-09-23 02:57:43 +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
c303848696 Add --enable-cparse and rename --without-debugger to --disable-debugger 2012-09-12 19:35:27 +02:00
Pau Oliva
739802b85c fix unzip param order on android's busybox 2012-09-10 16:52:22 +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
a8757a695f Fix android build and add r_core->anal_define api
Fix static build (libr.a)
Fix android build farm scripts
Build system is still hacky
2012-09-03 01:27:52 +02:00
pancake
cd30c0c0e4 Various little bugs fixed and pz/pZ renaming
Fix r_core_system pipes after scr.interaction
Fix 'ao N' (parse argument)
Fix segfault in p= N >blocksize
Split BBs in pdr with '--'
Add help for ps?
Do not show invalid rahash2 -a entropy at the end of p=e
pz is now psz
pZ is now pz
2012-08-29 17:24:30 +02:00
pancake
8ecfc21d58 Fix 'pd.N' cmd, 0size sections, use eprintf r_anal 2012-08-29 13:37:31 +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
1586c29785 Fix race conditions in makefiles and clean TODO 2012-08-10 15:59:37 +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
44ee3ce8d2 Initial working (again) version of gdb:// 2012-08-08 17:43:51 +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
bc572ce3df * QNX/arm port (this is bb10 and playbook devices)
- no debugger support yet
2012-06-01 14:50:24 +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
057f1b8353 * Fix android farm build on osx 2012-03-31 03:54:44 +02:00
pancake
05a0196690 * Fix osx-x86-32 debug register profile
* Some struct->typedef renaming
2012-03-07 10:43:02 +01:00
pancake
34d41b897f * Fix lot of regressions in command parsing
* Fix nested command repeaters
* Add hardcoded limit for BB analysis (fix infinite analysis bug)
  - RAnal.Fcn now has a .depth field
* Fix some r_cons usage related issues in rcore
* Add 'pif' command. as in 'pdf' one resizes the blocksize
* Fix '#' command/comment again
* Fix r_io_read issue that was causing everything to go wrong
2012-02-27 02:02:44 +01:00
pancake
beac4bbc24 * More fixes in the code analysis loops
* Properly detect end of functions in visual
* Apply rudi_s patches for cache
* Show push flag information if available as a comment
* Clear screen after quiting Visual
* Remove unused function
2012-02-16 01:26:50 +01:00
pancake
5fc05667d6 * Apply rudi_s patches
- libr/core/cmd.c: # ignores the complete line.
  - libr/io/undo.c: Improve seek undo/redo.
2012-02-15 11:13:05 +01:00
pancake
d2b6828bab * Fix some warnings reported by the farm
* Do not prompt or clear screen when using V in batch mode
* Optimization in r_config_get_i
* Show expression in r_num_calc errors
* Fix parsing of $$+2 in r_num_calc
2012-02-15 00:17:31 +01:00
pancake
4efc2bfab7 * rudi_s: Add r_list_foreach_safe() which is safe when deleting elements 2012-02-14 18:10:52 +01:00
pancake
65d1dddfd1 * apply rudi_s patch fixing multiple bugs
- Fix uninitialized variables and other GCC warnings
  - Remove unused variables, fix invalid heap ops
  - ?p print error if VA is not
  - Fix invalid write in r_io_cache_read().
* add support for 'mov reg, [addr]' in x86.nz[32]
2012-02-12 23:45:04 +01: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
227c985a08 * Added 'om' command to create, destroy and list IO maps
* Upgrade configure script to acr 0.8.8
  - Use proper --libdir LDFLAGS for OSX
  - Honor CPPFLAGS
* Fix help msg of 'yt' command
* Use RList in r_io (rudi_s)
* Fix HOME/END keys in xrvt-unicode
* Add dummy install-cxx target in r2-bindings
2012-02-07 01:51:56 +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
62219c8dda ** Apply patch from Simon Ruderich (thanks!)
* Remove some unused variables.
* libr/core/disasm.c: Fix minor memory leak.
* libr/util/str.c: Cleanup r_str_home() and fix potential crash.
* libr/line/dietline.c: Cleanup r_line_hist_load, fix memory leak.
* libr/core/cmd.c: Fix read from uninitialized memory.
* libr/util/str.c: Add comment why r_str_cpy() was added.
* libr/io/p/io_malloc.c: Prevent read from invalid memory.
* Split -n into -n (no user settings) and -N (no analysis).
2012-02-03 20:52:20 +01:00
pancake
f03e8674db * Fix -n help message as reported by rudi_s
* Oops fix build again
2012-02-03 16:23:14 +01:00
pancake
aeb29106d7 * Build the ewf plugin if requested
* Fix valgrind warning thanks to Simon Ruderich
* Add mach0 ARM subtypes and fix parsing
2012-02-03 01:13:09 +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
370c4ceed5 * Some usability enhacements for the visual hud
* Do not load huge sections. crappy bins!
2012-01-31 03:34:23 +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
earada
ced7fca719 * Fix bugs reported by @vext01
- Fix io_malloc off by one
  - Fix ?v segfault in OpenBSD
* Now f and f+ commands use same parse code
2012-01-12 11:35:49 +01:00
pancake
997a6dbd14 * Apply patch from @w_levin fixing lot of memory leaks - Thanks! 2011-12-16 16:33:06 +01:00
earada
edaa98e192 * Use r_num_math in malloc io plugin
- Fix free when malloc fails
* Fix rasm manpage typo
2011-12-08 00:23:16 +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
a64b481125 * Fix and optimize w32 console
- Clear the whole screen, do not trash
  - Refactorize code from RCons into RConsW32
* Apply @earada's patch with minor fix for undo seek
* Ignore */+- in non-cursor visual and autoblock enabled
2011-12-05 15:21:13 +01:00
pancake
49b45b64ac * Fix undo and redo commands
* Fix some manpages typos reported by lintian
* Asm testcase now forces x86 arch and 32 bits
2011-12-05 08:27:16 +01:00
pancake
2646161b77 * Apply @earada's patch fixing undo/redo seek 2011-12-04 21:09:16 +01:00
pancake
bfb4a786d0 * S= now fits in 80 columns
* Do not show error when cannot get regs
* Fix w32 prompt issue in r_cons_clear_line()
2011-07-03 17:45:44 +02: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
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
d7f2c850be * Add initial native support for fat binaries in r2
- Select arch/bits with r2 -a and -b (old -b is now -B)
  - Kinda hacky, but works for osx-x86/32/64
  - Export offset information of fat bins
* Show flags in search output
* Disable interactive console in rabin2
* Do not comment int3 opcodes
2011-11-22 00:59:20 +01:00
pancake
31a11600c5 * Theorically fix the r_magic dirty sanchez bug
* Fix RIO seek undo with io.va
* Warn if file size != region size in dml
2011-11-16 10:06:34 +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
7b093a3ed5 * Fix all dangerous bugs reported by llvm-analyzer 2011-11-14 22:46:23 +01:00
pancake
c16d61b370 * Add missing fs/types.h
* Fix many memory leaks in r_anal_{op,cond}
* Fix signature of r_fs_name()
2011-11-14 00:21:25 +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
95322945ab * Fix bug when redefining io sections
- Triggered by swapping io.va
  - Reported by @hteso
2011-11-03 23:34:18 +01:00
pancake
14f85bd76f * Import Glyn Kennington's patch for the build system
- Use absolute paths everywhere and simplify Makefiles
2011-11-03 11:49:50 +01:00
pancake
cb053b0cad * Add URL for agc graph
* Add r_line_get_prompt()
  - _set_prompt() uses strdup now
  - a bit slower but more consistent
* Use r_line from r_lang
  - Added history in #!<lang> prompt
  - Fix r_lang plugin init from r2-bindings-python-threads
  - Better help message in lang ? prompt
* Fix r_cons control+arrow issue
  - resets terminal as raw
  - History data is initialized if needed
* Fix sys/swig.sh for latest OSX-ports
* Add missing get_fcn_at() method in RAnal vapi
2011-11-01 04:37:13 +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
ad7e542b38 * Add '?r' command to get ranged random numbers
* Fix help for 'w' command
* Fix some null dereferences in gdb debug plugin (thanks @iamnion)
* Apply zed's patch fixing 32bit ptrace on 64bit boxes
* Fix 0 mod issue in r_num_rand()
2011-10-25 18:58:12 +02:00
pancake
063ec43194 * Use memmove instead of strcpy in overlapped dietline buffers
* Simplify ln -fs in install .. trying to make debian and openbsd happy
* Fix an out-ot-range bug in ELF parser
* Fix segfault when trying to create sections with an empty name
* Install python bindings only in site-packages
* Grep for go in supported.langs
2011-10-24 17:16:54 +02:00
pancake
6a01556838 * Some fixes for the non-pic build 2011-10-20 02:31:49 +02:00
pancake
51d6e83c93 * Fix mingw32 build 2011-10-11 01:35:21 +02:00
pancake
42edc834d2 * Added maps for debug.bfdbg
- Implement dm* command
* Implement hex:// handler in io.malloc plugin
  - r2 hex://1020304090102030
2011-10-09 19:45:34 +02:00
pancake
13d24051b7 * Implemented assembler support for asm.bf plugin
* Added support for breakpoints in the brainfuck debugger
  - Fixed write delegate in io.bfdbg plugin
  - asm.bf is now compiled as static in core
2011-10-09 04:41:53 +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
c7cced5c67 * Use null fot unsupported plugins
* Fix startup segfault in r_reg doublefree
2011-10-08 23:39:06 +02:00
pancake
bb904490dc * r2 -D now accepts a dbg.backend (dh) argument
- Fix segfault when accessing null r.file->fd->data
* Initial first working steps of the brainfuck debugger
* Add missing io.w32 plugin (untested)
  - Plugins that doesn't work on current platform are not listed
2011-10-08 12:10:30 +02:00
pancake
9efe88a9ce * Fix offbyone in asm.brainbuck bug
* Fix some segfaults and issues in r_magic
* Use the libr/socket/http library
* Added r_io_http plugin
* Magic search is extremely slow
2011-10-07 01:16:45 +02:00
pancake
2a0b57d51d * Implement 'ax' command.
- Add r_anal_fcn_xref_{add|del} methods
* Some fixes for r_bin_dex file format
  - Properly name all fields and methods
  - Add entry support in java too
* Add default sections for dex and java class files
  - constant pool, code, data, extra
* Beautify 'S=' command
2011-09-28 02:48:03 +02:00
pancake
4e3358a522 * Fix farm 2011-09-26 02:10:25 +02:00
pancake
9884ce9db0 * Initial support for Android NDK build (fix build)
- Not yet runnable, but compiles against bionic
2011-09-25 06:57:13 +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
403aa4b36d * Fix ~40 off-by-one strncpy's 2011-09-18 20:41:36 +02:00
pancake
12816468f6 * Refactoring of the TODO tasks
* Add dummy 'dca' command. needs to be implemented
* Reload all symbol information when io.va changes
* Only print jumpkey references in visual mode
* Reduce the autoblocksize in visual for disassembly
2011-09-03 03:10:01 +02:00
pancake
12af78ccee * Fix build, reduce warnings and add some checks 2011-08-30 19:12:49 +02:00
earada
5264679543 * Allow system command over rap 2011-08-17 19:50:40 +02:00
earada
f950675a7b * Add SSL support to rap protocol (raps://) 2011-08-16 02:55:46 +02:00
earada
475a57aa48 * Add rap metainfo support
* Fix memleak at r_fs (Thanks @ajaragoneses)
* Add directory dump support at r_fs shell
2011-08-04 21:28:07 +02:00
pancake
627871eac2 * Fix build for GNU/kFreeBSD 2011-07-20 17:34:00 -04:00