Commit graph

869 commits

Author SHA1 Message Date
pancake
894238ca89 Fix io/ptrace plugin on Linux 2014-05-26 11:33:39 +02:00
pancake
65fd1e4d5a Almost fix the io/ff and partial reads issue 2014-05-26 03:52:46 +02:00
pancake
576c9d6221 Fix ASLR (rabin2, r2 -B working again), sort i? output 2014-05-26 03:06:29 +02:00
pancake
7751882675 Add io.raw which is set when debugger mode is enabled 2014-05-25 02:23:33 +02:00
deeso
d15b599179 Reverting the changed io until "raw" access to r2 dataspaces is realized 2014-05-24 10:47:58 -05:00
jvoisin
5f34c17f8d Fix CID 1215264 2014-05-22 15:28:54 +02:00
jvoisin
533bd261bb Fix CID 1215265 2014-05-22 14:52:51 +02:00
deeso
ccc3794eeb Fixed the 0xff io bug 2014-05-22 02:17:09 -05:00
deeso
6d21408a31 Changing the listing of the Section Id to the position in the RIO Sections List 2014-05-21 14:01:21 -05:00
deeso
a702c82ac8 Enhance performance with reduced mallocs at load time 2014-05-21 13:02:02 -05:00
pancake
821cd215d6 Fixed io_default/write crash and malfunction 2014-05-21 04:36:53 +02:00
pancake
796dedf83c Fix close(0) issue in rio 2014-05-21 01:46:01 +02:00
jvoisin
956eba4a8e Fix CID 1135064 2014-05-19 23:47:13 +02:00
Anton Kochkov
9c7b579c46 Fix a typo 2014-05-19 09:06:38 +04:00
Anton Kochkov
eb2f9529cd Fix CID 1214584 2014-05-19 05:31:07 +04:00
Anton Kochkov
c7a101d7e2 Fix CID 1214580 2014-05-19 05:28:12 +04:00
pancake
fd3251d99c Refix 'r' command issues 2014-05-19 02:52:51 +02:00
pancake
b7eaf03813 Workaround for the famous io/ff, this is not a final fix 2014-05-18 02:37:34 +02:00
pancake
2494e22a4d Add rawio support in RIO (allows to open /dev/sda f.ex), Add io.enforce=0|1|2|3 2014-05-18 02:19:11 +02:00
pancake
ea0c2caa59 Add sys/ios-sdk build scripts 2014-05-17 04:41:33 +02:00
pancake
c6a73d3074 Fix loading sections from fatmach0 bins 2014-05-16 03:48:57 +02:00
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
earada
f7146bd0ef * Fix (Free|Net)BSD native debug and register definition
* Fix build on FreeBSD (Thanks capi_x)
2011-07-19 20:01:47 +02:00
pancake
0d4faf652e * Set library version number for plugins
- Registers for which version of core was compiled
* Use tar --format=posix when GNU tar
  - Fixes the dependency on BSD systems
* Fix in doc/fortunes
* Fix this class pointer in asm_java
* Re-Fix uglily the bin_elf strtab issue (needs more work)
* Fix Vala regression in r_asm.vapi
2011-07-19 00:12:36 +02:00
pancake
9be6f53757 * Bump release 0.8 - Codename thecakeisapie
* Fix uninitialized memory issue in r_block_resize()
  - Thanks vext01 for reporting
2011-07-15 18:13:00 +02:00
pancake
07b5b473c5 * Use OpenSSL (cflags/ldflags) from pkg-config 2011-07-13 19:22:38 +02:00
pancake
188560bf4b * Fix build and lot of warnings for w64 2011-07-13 18:55:16 +02:00
pancake
ca5e38d239 * Fix w32 and w64 build (r_fs/grub issue)
* Dont quit rax2 when reading from stdin until 'q' or ^D
* Minor fix in fortunes
2011-07-13 13:59:55 +02:00
pancake
7bcd23df0f * Fix static build (--without-pic --with-nonpic) 2011-07-13 10:14:30 +02:00
pancake
1e3739f902 * Fix build for ming-w64 2011-07-12 19:42:20 +02:00
pancake
edc7da8f7c * More strcpy/sprintf/strcat exterminations 2011-07-06 09:40:23 +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
ea98fe1bd6 * Various gcc-4.6 warnings fixed 2011-06-30 00:17:12 +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
f7f82ecbc0 * Implement support for handling av/repag and Function keys in r_cons
* Remove -u flag in r2 (was not implemented, but not needed)
* Added ?v command
* Check if file exists in rarun2
* Fix cmd.vprompt
* Some fixes in io.undo
  - Two test cases to check undo and redo ops
* Added 2 bugs in testsuite
2011-06-05 20:36:22 +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
pancake
ac0748de51 * Rewrite io_ptrace{read|write} to fix bugs on OpenBSD-amd64 debugger
- New code is shorter, more readable and bugs-free
* Added 'install' target for r2-bindings/gir
2011-05-26 20:55:11 +02:00
pancake
9c6d905c92 * Fix seek undo 2011-05-22 01:16:12 +02:00
pancake
98af858f6a * Fix some warnings and build on linux 2011-05-20 21:04:16 +02:00
Nibble
9c3dd26eb1 * Fix analysis in bins with sections with vaddr = 0 2011-05-13 12:24:17 +02:00
pancake
05f0e7e56b * Fix step in OSX debugger
* Avoid C99 stuff in anal_avr
* Escape string passed to "/ " search command
  - Fix return value of r_str_escape
  - Thanks Gerardo for noticing!
* Kill process before reopening in 'oo' command when cfg.debug=true
  - Fix segfault when RIOMach* is NULL after reopening
2011-05-12 20:28:44 +02:00
pancake
a96c41f8a8 * Fix ptrace read 2011-04-04 13:53:05 +02:00
pancake
bd017111d7 * Fix r2 -d gdb://
- compile debug_gdb plugin statically
  - fix filename construction path
  - /path after :port in gdb uri is now ignored
2011-05-06 17:14:31 +02:00
pancake
3f2677ab7f * Added initial untested support for native gdb debugger mode
- r2 -d gdb://<host>:<port>
  - register maps not yet implemented
  - some basic step/continue should work in cfg.debug=true
  - gdbwrap instance is shared between RIO and RDebug
* RDebug is now arch-sensitive
  - Plugins describe which architectures and register sizes are supported
  - Native debugger is restricted to local CPU
  - Remote debugger (GDB) arch can be specified with -e asm.arch=arm
* Fix some random warnings
* Move R_ASM_ARCH into R_SYS_ARCH
  - Helper functions to translate id to string and string to id
    are now in util/sys.c (r_util)
  - Move all R_SYS_* from r_util to r_types
    - Endianness, OS, CPU and regsize is now 'global'
2011-05-06 00:59:10 +02:00
earada
6eb3578025 * RSocket API refactor
* Fix RAnal vapi
2011-05-05 03:41:57 +02:00
pancake
64699f476b * Fix debugger on OSX x86-64
- dc  (works now)
  - dcu (continue until address) works
  - db  (breakpoints mostly works (sw only))
  - page permissions are not correctly restored yet
* Add new API to list threads from a process
2011-05-01 04:00:59 +02:00
pancake
020dd97a8b * Fix many segfaults discovered in OpenBSD
* Fix segfaults caused by read buffer overflow in x86im
  - use a 16 byte delta buffer in function and basic block analysis
* Fix r_list_delete segfault caused by an use-after-free bug
  - Thanks Edd Barrett for notifying :)
* Clean up many warnings reported by OpenBSD's gcc
* Reduce analysis depth to 50
* Fix OpenBSD syscall definitions and fix generator python script
2011-04-03 02:43:15 +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
earada
450764d0c6 * Some fixes in the rap protocol 2011-04-17 20:58:32 +02:00
Eloi Sanfelix
128f6927a8 Removed eprintfs and warnings from io_gdb 2011-04-07 21:16:32 +02:00
Eloi Sanfelix
32e1b95440 * Generic gdb remote support
- Arbitrary number of registers
  - Arbitrary register size (1,2,4 or 8 bytes supported)
  - Added hw bp commands (not tested yet)
* Added system commands for io_gdb.c
  - Step, cont, regs (28 32bit regs now, platform-specific), bp (not always supported)
2011-04-07 20:49:05 +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
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
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
bbf8348e71 * Add another hack to fix build of debugger on BSD systems
- Not yet tested. Needs code cleanup too
2011-04-01 19:25:48 +02:00
pancake
bc18f03378 * Apply some patches reported by Edd in order to make OpenBSD build happy
- Not all patches applied, only the correct ones. needs some review
    in other BSD systems (NetBSD, FreeBSD, GNU/KFreeBSD, ...)
* Added R_BTW macro
2011-04-01 18:33:26 +02:00
earada
3f78d69a98 * Use getaddrinfo instead of gethostbyname (Thanks Adriana for the patch!)
* SSL Server Support:
- read and write can use SSL_bio functions
- Some random fixes
* Add serverssl test case
2011-03-27 17:44:27 +02:00
pancake
6485b55de4 * Honor console width in visual mode
- Fixes many glitches in disassembler and hex dumps
* Fix help for osx and w32 debugger IO plugins
2011-03-24 22:47:06 +01:00
pancake
a302d73eb4 * Clarify the DEBUGGER_SUPPORTED conditional in io/p_debug 2011-03-24 01:08:38 +01:00
earada
498e531479 * Initial import RSocket refactor
- Add SSL client support and testcase
* Update TODO
* Rename some r_hash structs to avoid openssl.h conflict
* io_rap plugin its broken now ... refactor time
2011-03-21 01:47:17 +01:00
pancake
d868fec5ba * Fix build of io_haret plugin
* Implement backtrace for OSX
* Fix build util/file.c for Solaris
  - Added doc/solaris
2011-03-13 21:00:46 +01:00
pancake
7df412ae25 * Fix build on W32
* Added --without-magic flag
2011-03-10 11:36:16 +01:00
Nibble
43b57a7102 * Fix io_ptrace write in 64bits
* Fix indentation of io_ptrace.c
2011-02-25 13:13:35 +01:00
pancake
4c66b9177a * Fix io-ptrace on 64bits
* ls command in ms shell now support path arguments
* cd now accepts .. as argument
* Fix access to subdirectories
* Fix nested mount directory resolution
* Added test scripts for r_fs
2011-02-25 03:17:20 +01:00
pancake
51bb76096f * Fix io->ptrace->write for !=4 lengths
* Add support for recursive and multiline magics
  - e magic.depth = 100
2011-02-25 00:23:58 +01: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
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
bc38178050 * Add support for multiline macro definitions 2011-01-27 09:31:52 +01:00
pancake
afb634f97d * Add support for ppc64 disassembler 2011-01-23 18:19:03 +01:00
pancake
3c2739a8c2 * Add ewf plugin using the new r_io plugin abi
* Fix io ptrace |pid and fix w32dbg for new r_io
2011-01-23 00:18:26 +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
61e3cd4e50 * Fix some warnings thanks to toys/makewarn :D 2011-01-21 15:05:55 +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
39f77a430f * Huge r_io refactoring
- Many things are broken in this commit
2011-01-20 22:52:16 +01:00
pancake
74ff5af871 * Fix for r_io_resize -- needs merge with refactor 2011-01-17 15:28:40 +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
pancake
16eefe9762 * Fix w32 mmap implementation for r_mmap api 2011-01-07 00:42:27 +01:00
pancake
13b04ecaf6 * Fix build for w32 2010-12-16 13:55:20 +01:00
pancake
b53ea8bec1 * Apply @earada patch
- Fixed redundant check in r_hex_str2bin
  - Initialize fd in r_io_new
  - Added Haret IO (WinCE app) plugin
2010-12-13 10:41:28 +01:00
Nibble
cfc6dcea96 * Fix io_ptrace read in 64bits 2010-11-19 11:09:49 +01:00
pancake
96797846e9 * Fix io_ptrace_read when memory error occurs
- Fixes graphs in debugger mode
2010-11-19 00:49:05 +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
pancake
dacab5e4bf * Initial implementation of r_debug_step_soft and _hard
- arm-darwin seems to not support stepping, mips follows
  - Delegate swstep responsability to r_debug api
* Implement set registers in arm-darwin
  - write in memory is not yet working
* Some fixes in memory regions list in arm-darwin
2010-11-11 03:13:44 +01:00
pancake
19c90096ff * Fix read registers in darwin-arm 2010-11-11 02:00:10 +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
264f95a40e * Fix build in iOS 4.1 (darwin-arm)
- Honor CFLAGS everywhere
  - Use ut?? instead of uint??_t
* Add build instructions in doc/iphone
* Fix some out-of-range conditionals
2010-11-08 19:30:25 +01:00
Nibble
4ddde68f05 * Initial work on fixing bp&&dc&&dc
* Fix bug in io_ptrace when it writes to mem in 64bits
* Minor cosmetic changes in test_x86im
* Update TODO
2010-10-28 20:47:21 +02:00
pancake
0a294261aa * Many warnings fixed thanks to gentoo build and @astralia 2010-10-27 16:31:51 +02:00
pancake
8ed7004780 * Some fixes, null pointers and other beasts
found thanks to the python bindings
2010-10-26 18:24:14 +02:00
pancake
ead5ebdd32 * Oops. fix debugger attach 2010-10-13 01:00:39 +02:00
pancake
8f9dbbd0d1 * Remove some use of alloca()
* Fix lock when using 'r2 -d'
* Invalid program name results in error, not warning
2010-10-12 13:22:19 +02:00
pancake
dac5cf1b08 * Apply patching fixing various bugs on w32
- Some segfaults resolved and bugs identified
  - Thanks @mrgadix :)
2010-10-12 01:18:17 +02:00
pancake
d71fcd2708 * Do not show color prompt in windows
* Fix build on w32
* Finish the symgraph script
2010-09-24 19:04:33 +02:00
pancake
14f5a6a6fd * Cleanups in many TODO/READMEs 2010-08-26 12:18:30 +02:00
pancake
b07bf785be * Add the possibility to import/export regs from vm to debugger
* Parse rap:// in a different way, so we can now connect without
  opening any file. code is hardly simplified
2010-08-23 12:08:23 +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
8f6bdc3560 * Add 'avrr' and 'avrc' commands to setup vm regs
* Many minor random fixes
* RVm api has an own architecture description file
  - r_vm_set_arch(vm, arch, bits);
  - add x86-16, x86-32, x86-64, arm-32
2010-08-23 00:48:44 +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
Nibble
4b052b53ee * r_core
- Add cfg var anal.ptrdepth to define analysis depth for indirect references
  - Add support for indirect references to /a (needs more testing)
* r_io
  - Remove perror msg from r_io_read_i()
* r_anal
  - Minor fixups in arm and x86 plugins
2010-08-19 02:30:12 +02:00
pancake
ddd67f7f3e * initial parsing of 'jns' in anal_x86.c
* Use RList in RIOMap
  - deprecate _list
2010-08-16 11:24:13 +02:00
Nibble
c1c8c32284 * r_core
- Fix 'S' and 'S='
* r_io
  - Add field 'debug' to r_io_t
  - More refactoring of io.va code
2010-08-16 01:50:01 +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
pancake
01fa57d832 * Merge old w32 build fix
* Add 'c' in '?' help message
* Import edu's RList-ification of RSearch patch
* Deprecate r_search_kw_list() method
* Fix build of r_socket_to_string() method on w32
2010-08-08 19:03:51 +02:00
Nibble
f853dab09f * More fixes on mingw32 build
* Update VERSION in swig configure script
* Update doc/windows
2010-07-24 12:44:19 +02:00
Nibble
344bcf16a6 * Fix build 2010-07-23 12:19:39 +02:00
pancake
e9a8a96661 * Implemented r_lits_sort() and r_list_add_sorted()
- Add function variables sorted by delta
* Initial import of the io_gdb plugin
  - Statically compiled plugin by default
  - Use libgdbwrap
  - Implements just raw IO read/write
  - Needs more testing
2010-07-22 01:14:13 +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
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
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
3fb6db9f11 * Fix segfaults in cons and debug for w32 2010-06-28 01:04:27 +02:00
pancake
39a8c23740 * Major refactoring in r_meta
* Added C! command that calls r_meta_sync()
    - put xref information inside function metaitems
    - reduces cpu usage
  - Fix some memory leaks
  - Add object lifecycle for r_list_item_t
  - Use RList instead of list.h
* Apply patch from edu fixing '+' key in visual (Thanks!)
* Fix segfault in osx printf ("%s", NULL) using r_str_get()
2010-06-28 00:43:07 +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
e101e5023d * Fix build on mingw32 2010-06-27 22:14:06 +02:00
pancake
d47e67cdd1 * Fix build for osx-x86-32 2010-06-27 21:33:32 +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
pancake
79e78ea47d * Fix ffio and io_ptrace return value when read error 2010-06-13 12:40:01 +02:00
pancake
ca8a2a9280 * Fix segfault in malloc:// IO backend
* Catch error in core to avoid future issues
2010-06-13 12:24:07 +02:00
pancake
c9a403cf71 * More work on 'at' command
* RRange ported to r_list (not yet tested)
* Fix r_cmd.vapi RCmdPlugin struct definition
2010-06-04 23:47:35 +02:00
Nibble
4235dd2a8e * Fix bug with static plugins
* Treat r_cons and r_line as singleton in r_core_init
* Move gdiff to r_core
* Fix libgmp support

--HG--
rename : libr/diff/gdiff.c => libr/core/gdiff.c
rename : libr/diff/gdiff.h => libr/core/gdiff.h
2010-05-28 02:44:51 +02:00
Nibble
cbdfc5ec77 * Fix io.va bug in r_io 2010-05-27 01:18:30 +02:00
Nibble
8ab4969851 * some more renaming 2010-05-27 00:57:25 +02:00
Nibble
4ead120e53 * Rename "handler" to "plugin"
* Rename */handler.c to */plugin.c
* Rename "handle" to "handler" in r_lib

--HG--
rename : libr/bp/handle.c => libr/bp/plugin.c
rename : libr/cmd/handle.c => libr/cmd/plugin.c
rename : libr/debug/handle.c => libr/debug/plugin.c
rename : libr/io/handle.c => libr/io/plugin.c
2010-05-26 18:25:35 +02:00
Nibble
5c35f6e359 * Rename {r_*_handle_t, R*Handle} to {r_*_plugin_t, R*Plugin} 2010-05-26 01:42:22 +02:00
pancake
d564c5a0fe * Implement 'dcc' and 'dcr' debugger commands
- Using continue-until-opcode-type call
  - Implemented continue-until-syscall in the same way
* Fix r_str_hash() algorithm to avoid colisions
* Added r_sys_bt()
2010-05-24 12:07:54 +02:00
pancake
11f5134c91 * Initial import of the procpid IO plugin 2010-05-21 19:05:53 +02:00
Nibble
1eec9fcc2c * r_io
- Fix lseek
* r_hash
  - Remove debug printf from t/hello.c
2010-05-21 01:34:35 +02:00
Nibble
7abcfe6852 * Refactoring
- Remove all init functions (included in _new)
  - Update vapi's (needs more work)
2010-05-20 17:40:58 +02:00
pancake
1940120f0a * Added fast keys to seek on jumps or calls '1'-'9'
* More seek undo pushes in visual mode
* Added 'd' key in visual mode 'df' defines a function
* Huge repointerization in RCore
* Fix r_num_new() constructor
2010-05-20 00:59:42 +02:00
pancake
b8e98f3a00 * Add bb_list() method to RAnalFcn class
* Handle function boundaries in 'pd'
* Reset stack_ptr=0 when leaving a function body
* Fix 'asm.bytes=false' (display flags as newlines)
* Fix 's+' and 's-' (seek redo, seek undo)
  - Bindied in visual mode as 'u' and 'U' keys
  - Added 's*' command to list seeking history
* Add dummy file.md5 eval var
  - TODO: must be done by rabin2 and checked by project file
2010-05-19 02:39:01 +02:00
pancake
193bdb886d * Initial work on w32dbg IO, fork and attach still incomplete
- Not yet linked with debugger backend
2010-04-14 23:56:27 +02:00
pancake
46ab7ab8b0 * merge 2010-04-14 14:11:38 +02:00
pancake
7a753ac0cb * strnlen helper in format/elf/elf.c is now static inline
* Some random syntax cleanups
* Fixes some warnings in r_socket on w32
2010-04-14 13:28:56 +02:00
pancake
34435b1285 * Mental note: %lld/%llx does not exist on windows
- Use the macro PFMT64{xod} in case
2010-04-14 13:02:23 +02:00
Nibble
b95e8ae265 * Fix bug in r_io_seek related to va 2010-04-11 13:48:16 +02:00
Nibble
bfba666c62 * Revert last commit O:) 2010-04-08 14:28:01 +02:00
Nibble
83dffd48ec * Fix r_io_seek issues when io.va = false 2010-04-08 14:19:07 +02:00
Nibble
c5396fbb10 * Fix cmd repitition (3x@offset)
* Fix seek to invalid offsets
* Improve r_anal graphs
2010-04-08 14:04:34 +02:00
pancake
f2563a7509 * Export 'srwx' perms of sections in rabin2 -rS
- Handled by 'S' command
* Added dummy 'z' command to handle zignaturez
  - Added more dummy 'az' commands
  - RCore now depends on RSign
* Some refactoring and speedup in _update method of RSearch
  - Added support for distance search (maybe buggy and incomplete atm)
  - Fix binary mask for keywords after previous commit
* Added 'r_str_rwx*' helper functions in r_util
2010-04-08 12:29:47 +02:00
pancake
29ad58473f * Fix 'e foo' output
* Fix io.ffio warnings
* Fix '.' key in visual mode (sr pc)
* Various 64bit related fixes
* Various fixes in r2-swig
  - Needs valaswig from hg (update)
  - r_config and
2010-04-06 14:23:12 +02:00
pancake
49edd0649c * Implement 'wc' command to list, commit and reset cache changes
- Added doc/iocache with a usage session of 'wc' command
  - Needs io.cache=true
  - This is the replacement of the 'undo' feature of radare1
  - Removed cache-related code from the r_vm module
2010-03-30 23:12:19 +02:00
pancake
b6a1d6e865 * Added support for cached IO
- e io.cache=true
  - Fixes support for overlapped changes
  - Implement cache_list
  - We can merge it to remove vm and undo writes with this
* Some code cleanup in vm
* Fix division by 0 bug notified by @ash
* Some random makefile cleanup
2010-03-30 17:37:15 +02:00
pancake
728bd1f817 * Fix w32 build 2010-03-25 10:18:59 +01:00
pancake
4f3c5f1ea5 * Added 'asm.middle' disabled by default
- Enables the support to bypass anti-disassebly tricks
* Fix write support for non-plugin IO backends
  - Fix read of non-full blocks
2010-03-23 23:26:59 +01:00
Nibble
ac66e096a6 * r_io
- Implements missing r_io_handle_generate
2010-03-19 14:01:37 +01:00
pancake
3b326d6a41 * Cleaner disassembly output with asm.bytes and
asm.nbytes options
* Sort config keys
2010-03-19 04:27:11 +01:00
pancake/n900
3d01fa8225 * Fix some issues on the build linkage 2010-03-14 18:06:21 +01:00
pancake
b3a224fbbb * Some changes and fixes for the build of swig
- Thanks sre
  - 'make swig-install' is the way to go :)
2010-03-14 00:36:55 +01:00
Nibble
9af6794cec * Rename MALLOC_STRUCT into R_NEW and deprecate it. 2010-03-12 13:35:10 +01:00
pancake
1341620c73 * Rename cons/filter.c to grep.c
- Some random changes.. with no success
  - Grepping console buffer is not working
* Cleanup the 'ds' and 'dp' commands
  - Implement 'dpa' to attach
  - Allow to list childrens of pid
  - Also list all attachable pids
* Fix segfault by leaking.. needs some cleanup
* Fix r_debug_reg_list (NULL) issue

--HG--
rename : libr/cons/filter.c => libr/cons/grep.c
2010-03-08 00:18:58 +01:00
pancake
8def2767f3 * Initial quick-and-dirty implementation of backtrace
- Using r_list and so on
* Add 'pm' print command using print_format()
* Change color of nops and end-of-block-split lines
* More random syntax fixes
2010-03-01 10:49:04 +01:00
pancake
f8fcba5d81 * Implement plugin support to r_cmd
- Added dummy command **dummy** for testing purposes
  - Initialize CMD dynamic plugins from r_core
* Fix bug in configure-plugins
  - Generates bad config.mk and config.h when no static
    plugins defined for a category.
2010-02-26 00:37:49 +01:00
pancake
020686b86f * Implement r_str_argv()
- Use it from p/debug
  - Now is possible to debug programs with arguments
  - Added test program in util/t/argv
* Fix pd/pD
* Clean and fix the native debugger plugin
* More random code syntax cleanup
* Rename io plugin names without the deprecated 'io_' prefix
* Fix mk/stat-make.pl (missing ;)
2010-02-23 00:26:13 +01:00
pancake
fc9a622aa4 * Cleanup of r_types.h
- Fixes in R_SYS_OS and ENDIAN (oops)
  - Cleanup in debug
2010-02-22 12:42:43 +01:00
pancake/imac
edb48945b7 * Added DEFAULT_ARCH for mips and powerpc
* Refactoring in r_anal API for _aop() with addr and length
  - Added ppc code analysis plugin
  - sync in r_core
* cfg.ffio->io.ffio
* Add CMD type in r_lib
* Added SR register type
* More stuff is now working in osx-ppc debugger
* Random code cleanup
2010-02-22 04:02:13 +01:00
pancake/imac
dfd884db74 * Initial steps to make osx-ppc debugger work
- Use 'asm.arch=ppc' in POWERPC by default
  - Added r_io_mach for MACH microkernel debugging
    - Compiled as static plugin by default
  - Added darwin mach/ptrace stuff in debug_native
  - Very ugly code.. needs some refactoring
  - Add powerpc-OSX registers description map
  - Added temporally .h files in debug/p/native
* Display verboser version message with 'r2 -V'
* More linking issues fixed for OSX
* Build gdbwrap debugger plugin
  - Not yet usable
* Added R_SYS_OS R_SYS_ARCH and R_SYS_ENDIAN strings
* Deprecate DEBUGGER variable
2010-02-22 02:42:29 +01:00
pancake/imac
9890c6e8b0 * Fix build in OSX
- env.sh now also uses DYLD_LIBRARY_PATH
  - Fixes in ollyasm/dis to link with no global variables
    - Remove double definition of global _state
    - Same for asm_java
  - Split -shared and -Wl,-R into LDFLAGS_{LIB|LINKPATH}
    - Fixes linkage in osx
  - anal_x86_bea plugin now links correctly against BeaEgine.o
  - dietline is now #include'd from line.c
  - no debugger support yet
  - Do not externalize any variable. Some linkage does not support it
* Remove bininfo dependency .. aims to be merged into bin soon
* Added r_str_case() method to change to lower/upper case a string
2010-02-21 20:21:36 +01:00
Nibble
8d4172972d * r_bin
- Add field bits to RBinInfo
  - Make r_bin_*_get_arch compatible with r_asm
* rabin2
  - List sections before anything else
  - Add "e asm.bits x" to "rabin2 -ir" output
* r_flags
  - Remove r_flag_set_base
* r_io, r_core
  - Now r_io handles all the va related stuff
  - Execute rabin2 with the flag -v if io.va = true
2010-02-21 11:35:49 +01:00
Nibble
fd02a34bc4 * rva is working, but needs more work
* Add S cmds to the output of rabin2 -rS
* Fix cmd 'S' (sections)
* Fix r_io_ptrace
* Add some missing signatures into r_util.h
2010-02-18 18:58:28 +01:00
pancake
09ad7c5b0f * Do not use 'extern' variables outside modules
- Fixes build in OpenSolaris
* Fix build of some io plugins
2010-02-18 16:36:55 +01:00
pancake
d6f95d33c3 * Lot of fixes in the vala/swig wing
- r_util is now bindable from swig !!
  - Added test cases for r_util
  - r_flist has been mirrored in C, to keep API consistent
* Rename RIO->seek into RIO->off
  - There's a method with the same name
  - Also rename list.h ->next and ->prev into ->n ->n
* Apply patch from whats fixing 'r_cmd_str' EOF for stdin (Thanks!!)
  - Added test program to ensure stdin food works
* Allow '-f -' to rasm2 (assemble file from stdin)
* Added test case in python using RBin, RAsm and RCC to compile
  and assemble a code to be injected in the given target program
2010-02-15 22:59:26 +01:00
pancake
822a33377b * Initial working implementation of the r_diff with delta in C
- Uses the mercurial's C algorithm for delta diffing
  - Remove r_diff_lines .. do we need a line-level diffing tool?
  - Remove -l flag from radiff2
* Rename RIo to RIO
* Added r_reg_arena_new () to simplify arena creation
  - Some sanity fixes in r_reg arena.c
* Add -C in rasm2 to output in C string format
* Initial working implementation of r_debug_execute to inject code
  in child process and restore memory and registers
  - Returns %a0 register value in ut64
* Added 'c' command to r_core - to compare -- just dummy
  - Will use r_diff
  - if rdiff callback returns NULL, we must stop scanning
  - old r_diff_buffers_delta is now named buffers_radiff
  - Added test files in diff/t/{file1,file2}
* Added doc/plugins documentation file
* Fix ${EXT_SO} in bin/p and asm/p (dejavu?)
* Added dummy asm_gas r_asm plugin
* Various random syntax fixes
* Rename 'dbg.ptrace' to 'dbg.native'
* Added r_debug_io_bind () to sync dbg and bp io_bind
* r_debug_map_list is now in a nicer format
* Append ${EXT_EXE} in diff/t
* Add missing util/log.c and vapi/r_line.vapi

--HG--
rename : libr/debug/p/debug_ptrace.c => libr/debug/p/debug_native.c
rename : libr/debug/p/ptrace.mk => libr/debug/p/native.mk
2010-02-05 12:21:37 +01:00
pancake/fluendo
3a3a9b03f3 * Add check for lua5.1 before building the lang plugin
* Fix segmentation fault in r_io_read
  - Only happening when debugging (4 byte overflow)
* Remove |reg command from r_io
2010-02-03 16:57:44 +01:00
pancake/fluendo
c02ef87ac2 * Add support to ARM for the debugger
- asm.arm plugin is now embedded into r_asm as static plugin
* Added register alias names for r_reg
  - Add register names for x86/32/64/arm
  - pc, sp, bp, a0, a1, a2, a3
* Do not build lua5.1 if no lib found
* Enable cfg.ffio in debug mode
* Some code simplification in r_asm
  - Fix a negative offset bug in elf on ARM binaries
2010-02-03 14:34:00 +01:00
pancake
f343c4d74f * Fix delta seeking (do not allow seeks <0)
* Out of file reads (padding) filled by 0xff
* Added r_sys_cmd () to wrap r_system()
* Fix debug registers command to display segment and flag registers
  - Some draft changes in r_debug (signal handling and backtrace)
* Fix warnings in r_line
* Many more indentation fixes
  - Added st32 and st8 basic types
2010-02-02 11:09:52 +01:00
pancake
2b819bba83 * Added 'o' command to open, close, list and map files
* Many syntax standarization fixes
* Clean up some warnings
2010-02-01 11:55:56 +01:00
pancake
f974fea7da * Many fixes in r_io and r_anal from r_core
- Reference code lines are displayed again
  - Optimize the open_as method of RIo
  - Do not use R_XXX_NAME() macros anymore. simplify!
  - Add 'ah' command to select the handler
* Do not allow to seek on unreadable addresses
  - Warns a lot but its better. More strict
* SEEK_END is now UT64_MAX. Fear
2010-01-31 02:30:59 +01:00
pancake
54bdfb22bd * Uppsercase classnames (rCore -> RCore)
- Fixes ruby warnings
  - Follow java syntax conventions
  - Helped to identify and fix bugs in many vapis
  - Sync swig examples
  - Add test-r_core.rb (ruby test for RCore)
* Some work in r_cons, some refactoring and cleanup
  - scr.html is now working again
  - w32 cons support should work now
  - Rename r_cons_get_columns -> r_cons_get_size()
  - But it needs more work
* Typedef all r_range, r_parse and r_anal structs
  - Add missing r_lib.pc in configure.acr
* 'make' clean now removes the libr* in swig/${LANG}/
2010-01-26 01:28:33 +01:00
pancake
e5b6d1582b * Add 'install-vapi' target in libr/Makefile
* Fix linking of r_core (r_bin not found)
* Lot of fixes for valaswig. libr, r_io and r_debug
  are now usable from python/perl/ruby
  - Fix many .vapi files
  - Enhace the libr.pc
  - r_hash.deps must be removed
  - Depends on valaswig-head
2010-01-24 23:47:18 +01:00
pancake
8fbe0be140 * Add --without-pic configure flag to build radare2
without PIC code (only static libraries, and link binaries)
  - Fix linking order dependencies
* Fix some missing EXT_EXE
* Add some definitions to make debug_ptrace register work
  on Solaris and *BSD (no windows yet)
  - Some fixes for mips, x86, x86-64, arm and powerpc
* Initial import of rsc2
  - Added intel2att rsc2 sample script
2010-01-21 21:22:30 +01:00
pancake
41ba5c0104 * Add some missing ${EXT_EXE} in t/
* Implement write register support in debug.ptrace
  - Added many new commands related to registers to r_core
  - Allow to set register values
  - List register types
  - Display register values by type
  - Get value (f cureip @ `dr:eip`)
  - Added continue with signal method to r_debug API
  - drp : display register profiles
  - drp [file] : load register profile
  - Fixes in r_reg, r_io vapi and test program
2010-01-19 11:25:17 +01:00
pancake
2a054f6bba * Added w32dist makefile target to generate a distributable zip
with .dll and .exe for w32
* Do not build libr.${LIB_AR} by default (problematic in some platforms)
* Lot of more fixes for building on w32 - Yeah i got the first build done!
  - Check radare.org/get/radare2-w32*
  - So many things are still broken for windows
  - Fixes some recursive and missing dependencies
  - LINK and LDFLAGS must be after $OBJ
2010-01-15 17:02:04 +01:00
pancake
65c744d67e * Fix build for linux-mips
* Add missing debug/t/Makefile
2010-01-15 16:24:06 -05:00
pancake
eb99dd1203 * Many more fixes for the mingw32 port 2010-01-15 13:02:54 +01:00
pancake
3d667dbdd9 * Many bug fixes for the build. Oops 2010-01-15 01:56:43 +01:00
pancake
3bc0212ee6 * Initial import of the 'configure-plugins' script
- accepts --static and --shared to setup which plugins
    you want to build statically in the library or dynamically
  - normalize .mk and plugin file names to adopt a single standard
  - WARNING: huge commit
* Added 'mk/sloc.mk' with 'sloc' target to count
  lines with sloccount everywhere (yeah!)

--HG--
rename : libr/asm/p/x86bea.mk => libr/asm/p/x86_bea.mk
rename : libr/asm/p/x86nasm.mk => libr/asm/p/x86_nasm.mk
rename : libr/asm/p/x86olly.mk => libr/asm/p/x86_olly.mk
rename : libr/config.h => libr/config.h.head
rename : libr/config.mk => libr/config.mk.head
rename : libr/debug/p/dbg_gdb.c => libr/debug/p/debug_gdb.c
rename : libr/debug/p/dbg_ptrace.c => libr/debug/p/debug_ptrace.c
rename : libr/debug/p/dbg_libgdbwrap/Makefile => libr/debug/p/libgdbwrap/Makefile
rename : libr/debug/p/dbg_libgdbwrap/README => libr/debug/p/libgdbwrap/README
rename : libr/debug/p/dbg_libgdbwrap/client.c => libr/debug/p/libgdbwrap/client.c
rename : libr/debug/p/dbg_libgdbwrap/gdbwrapper.c => libr/debug/p/libgdbwrap/gdbwrapper.c
rename : libr/debug/p/dbg_libgdbwrap/include/gdbwrapper-internals.h => libr/debug/p/libgdbwrap/include/gdbwrapper-internals.h
rename : libr/debug/p/dbg_libgdbwrap/include/gdbwrapper-stddef.h => libr/debug/p/libgdbwrap/include/gdbwrapper-stddef.h
rename : libr/debug/p/dbg_libgdbwrap/include/gdbwrapper.h => libr/debug/p/libgdbwrap/include/gdbwrapper.h
rename : libr/debug/p/dbg_libgdbwrap/include/libaspect.h => libr/debug/p/libgdbwrap/include/libaspect.h
rename : libr/debug/p/dbg_libgdbwrap/include/libe2dbg.h => libr/debug/p/libgdbwrap/include/libe2dbg.h
rename : libr/debug/p/dbg_libgdbwrap/include/revm.h => libr/debug/p/libgdbwrap/include/revm.h
rename : libr/debug/p/dbg_libgdbwrap/interface.c => libr/debug/p/libgdbwrap/interface.c
rename : libr/io/p/dbg.mk => libr/io/p/debug.mk
rename : libr/io/p/io_dbg.c => libr/io/p/io_debug.c
2010-01-13 23:42:49 +01:00
pancake/fluendo
1ac990a330 * Fix build 2009-11-23 17:49:40 +01:00
pancake
648189f21f * Drop PFX in debug plugin names
* Minor cosmetic fixups
* Handle binmask==NULL in all _add methods of r_search
  - Added empty declarations of reset() and kw_reset()
* Various random fixes in some vapis
2009-09-24 19:46:32 +02:00
pancake
42688da6ec * Rename some handle_set into _use() new syntax
* Make radare2 debugger interact with r_reg
  - Register profile is now provided by the r_debug plugin
  - |reg and dr works fine now
  - Fix reg_sync and reg_read for dbg_ptrace
* Clean some warnings
* Fix build
2009-09-20 02:16:14 +02:00
pancake
b37ec4f0b1 * Added 'mk/stat' tools
- Perform statistics about XXX and TODOs
* Change signature of r_debug_mmu_
* Added io->cached_reads
* RAPIfy the r_lang
* Reviewing of the r_lib API
  - Write the vapi file
  - Check for null mallocs
* Fix build of r_reg
2009-09-17 11:48:36 +02:00
pancake
91ad40d663 * Major unfinished refactoring for r_debug and r_bp
- radare2 debugger is now broken
  - r_reg has grown a bit more
  - Better separation of debugger elements
* r_bp now has r_bp_add_hw and r_bp_add_sw() calls
  - Added minimal support for breakpoint handlers
  - Import th0rpe's watchpoint expression parser engine
* iob moved from r_debug to r_bp
* Arch types has been moved into r_asm
  - Soft compile time dependency
* Update pkg-config .pc files
2009-09-14 00:37:28 +02:00
pancake
669ce0a815 * Initial r_io_bind'ization of r_bin .. not yet working
- Meld bind.c into io.c
* Some review in many r_debug code
* Added vapi for r_debug
2009-09-10 20:51:34 +00:00
pancake
f1c9c1e778 * Some malloc checks in _new() class constructors
- Fix warnings in many places
* R_APIfication of r_anal
  - Fix probable segfault in x86_bea
* Use macros to define plugin names
* Fix build of radare2, rasign2 and debug/t/main
* Call sundo_push() when io_seek
* Added toggles for seek and write undo levels

--HG--
rename : libr/sign/t/rasign.c => libr/sign/t/rasign2.c
2009-09-09 00:35:00 +00:00
pancake
fdf164e229 * Add 'r_io_undo'
* Added deinitializators for r_io_cache
2009-09-08 18:16:52 +00:00
pancake
780e424cbe * Added R_IO_EXEC, Removed R_IO_RDWR.
- Promote the use of binary ORs
* Make r_io support cached IO
* Enforce rwx/seek by section information
  - Optional by configuring io->enforce*
  - Add cache.c
* section->comment => name
* Added resize callback on io pluings (not yet implemented)
2009-09-08 02:14:19 +00:00
pancake
e5c83d6d26 * Do not pass CFLAGS when linking asm/t/fastcall
* Populate r_io_lseek -> r_io_seek refactoring
* R_APIfy a bit the r_hash
* Also build hash/t/hello program
* Fix some warnings and build blockers
* Make rahash2 read from files (using slurp)
* Added r_buf API in r_util (interacts with r_io)
* Add initial template for r_io_bind
  - Needs some more work
2009-09-08 01:08:46 +00:00
pancake
16cf12c8d6 * Fixtures for the r_io API (breaking ABI and so :)
- Standalone test program is now able to debug a process and read mapped memory
  - Fixes in the r_io and ptrace plugin sides
* Added 'make vdoc' target
2009-09-07 20:01:34 +00:00
pancake
1dd4042505 * Lot of work on refactoring r_io
- Added desc.c to handle file descriptors (avoid dupped, register handlers, ..)
  - Fix some bugs and optimize io paths
  - Added resolution methods
  - Maps are incomplete but better interfaced. Needs more work
  - Added io/t/map.c test program (not yet working)
* Some fixups in many vapi files
  - Fix broken ones (syntax parsing error)
  - Complete them a bit more
* Initial working version of a demo of list.h vala interface
  - Implemented as a Generic class
  - Designed as an Iterator, so 'foreach' can be used to iterate
  - Added example program iterating from vala and generating a list in C
2009-09-05 23:58:02 +00:00
pancake
2ca850007f * Major refactoring of r_io (api has changed)
- filedescriptor is only defined by r_io_set()
  - the rest of functions just take one argument less
  - there are not enought filedescriptor changes to force fd resolution all the time
* Fix memory leak in r_io_open
  - Better error management
  - Fix Makefile warnings in libr/io/p
* Added read_at and write_at helper functions
* Random indentation fixups
* Added shm.mk and malloc.mk
* More useless work for r_iter
2009-09-02 00:10:51 +00:00
pancake
624f5c68ea * Return "" instead of NULL when possible in core input
- myfgets returns length(str)+1
  - r_line fix for empty lines interpreted as EOF
* RAPIfication in io.c
* Fix the way to build the tests programs in io/t/{cat|read4}
2009-08-22 05:29:58 +00:00