Commit graph

1188 commits

Author SHA1 Message Date
Anton Kochkov
afedcc0074 Fix CID 1135011, 1195065, 1134730, 1134754, 1134907, 1134758 2014-04-27 01:06:13 +02:00
Anton Kochkov
cefa742a25 Fix CID 1134727 2014-04-26 04:16:28 +04:00
deeso
d5908941fb Steps toward fixing the reopen of a file being debugged 2014-04-24 18:21:40 -05:00
Anton Kochkov
e1822b6b15 Revert "Fix CID #1134974" - fix segfault
This reverts commit 75f4d83afe.
That was causing segfault on exit
2014-04-24 02:49:20 +04:00
Anton Kochkov
75f4d83afe Fix CID #1134974 2014-04-24 01:45:32 +04:00
Anton Kochkov
932d143ddd Fix CID #1134975 2014-04-24 01:39:51 +04:00
Anton Kochkov
a6aecca2c7 Fix CID #1134976 2014-04-24 01:38:17 +04: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
pancake
314ec76c18 Fix w32 linkage 2014-04-19 01:23:04 +02:00
pancake
170e2051ff Fix w32 build 2014-04-18 17:18:48 +02:00
pancake
9715a9ee97 Fix #701 - hashbang r2 scripts not working (see doc/all68k.r2) 2014-04-07 11:47:05 +02:00
pancake
405d56e5b9 Fix #764 - rahash2 -a all show empty hashes 2014-04-05 12:31:58 +02:00
pancake
613e6e2f9c Fix invalid free and r2 -hh help 2014-04-03 23:05:52 +02:00
pancake
08d94e38e1 Plugins are now loaded from API, not from Core constructor 2014-04-03 12:43:30 +02:00
pancake
eb4373e325 Update sdb (add -j), fix static link builds 2014-04-03 04:04:03 +02:00
pancake
4e8ab49948 Fix freeing issue in RCore plugins and rename RCmdPlugin to RCorePlugin 2014-04-01 17:17:03 +02:00
pancake
eaccd3bb7a Fix #743 - rax2 -v shows interpreter 2014-03-31 05:46:42 +02:00
pancake
ae20ea8132 Add ragg2-cc support for OSX-x86-64 2014-03-28 16:22:34 +01:00
pancake
d784eca2a8 Some static link fixes 2014-03-24 23:47:04 +01:00
pancake
a727663f98 Add radiff2 -a and -b flags 2014-03-19 10:41:13 +01:00
pancake
53edf7c17d Merge RCmd inside RCore 2014-03-18 00:05:44 +01:00
pancake
7c8daf1e70 Refactoring RBinMeta into RBinDbgInfo 2014-03-10 02:27:32 +01:00
pancake
784a1d2a72 Import radare2-capstone asm/anal plugins 2014-03-07 04:15:45 +01:00
pancake
7f8666a006 Fix invalid command quit 2014-03-05 01:11:24 +01:00
pancake
3aae30fa2c Refix link. Bump for 0.9.8.git 2014-03-03 19:33: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
pancake
d4ec9cf5a6 Handle libpath in rarun2 2014-03-03 17:55:52 +01:00
pancake
f5b14d2616 Fix another #642 thingie : listen disabled in sandbox
- Fix a bug in RSocket API
2014-03-03 02:01:40 +01:00
pancake
ed0fd9caee Fix w32 build 2014-03-02 00:54:50 +01:00
pancake
ffaa61c084 Fix install of libr2 2014-03-02 00:54:05 +01:00
pancake
97c6f955e3 Fix build of the preloaded libr2 2014-03-02 00:47:05 +01:00
pancake
9ec418ec37 Fix rap:// and enhace RConsMouseWheel support 2014-03-02 00:31:35 +01:00
pancake
bc46258402 Show bits and enhace RAsm plugin descriptions 2014-02-25 17:03:12 +01:00
pancake
fcc9489c4f Fix some more warnings 2014-02-25 12:18:29 +01:00
pancake
630a1f8603 Rename 'rdb' to 'projects' in ~/.config/radare2/ 2014-02-22 02:36:24 +01:00
pancake
c988fd1204 Fix build update manpage 2014-02-21 00:49:47 +01:00
jvoisin
00ed5b8d1b remove dup and improves dbg.bep handling 2014-02-21 00:44:41 +01:00
jvoisin
8a51dbcf83 Fix a typo 2014-02-21 00:44:41 +01:00
jvoisin
101ebb5e8f Handle errors when remove project file 2014-02-21 00:44:41 +01:00
jvoisin
dd12ac5b61 Reorder variables 2014-02-21 00:44:41 +01:00
jvoisin
ae7069a9b2 Add an option to r2 to start with sandbox enabled 2014-02-21 00:44:41 +01:00
pancake
e72310afc5 Fix r2 -i.. segfault 2014-02-19 22:49:11 +01:00
pancake
5b4f0db2e5 Fix #602 - Radiff2 -C should display a legend 2014-02-18 15:39:06 +01:00
Zach Riggle
36518d2ae6 Fix clang build (unicode characters outside of literals) 2014-02-15 20:47:46 -05:00
pancake
c6ab7b759d Fix another rasm2 bug 2014-02-10 16:09:40 +01: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
9a099e9e9e Add RAsmPlugins->cpus and handle it in rasm2 -L <arch> 2014-02-06 00:26:17 +01:00
pancake
c24543f112 Add rahash2 -e 2014-02-05 12:07:27 +01:00
pancake
c56bb2cd29 Fix #530 2014-01-12 01:34:11 +01:00
jvoisin
65bb8c5ec6 Coverity fixes #590
- Sandbox r2agent
- Check a return value
- Add missing parentheses
- Add missing parentheses
- Fix a division by zero
- Fix a wrong assignation
2014-02-02 23:58:50 +01:00
pancake
8279f508db Implement /P and Optimize + Fix #412 ROP search 2014-01-27 01:12:16 +01:00
pancake
4672c2d866 Fix short jmp assemble in x86.nz, add rasm2 -O <outputfile> 2014-01-26 01:58:25 +01:00
pancake
c43188c755 Some random cleanups for help pfx 2014-01-23 09:44:47 +01:00
pancake
baf3a82d37 Fix LIBR_PLUGINS path in r2 -hh 2014-01-21 03:14:27 +01:00
Adam Pridgen
db1bb1a089 Changed the location of RBinObject, and created RBinFile to conform similarly to
RCoreFile, where RBinFile contains meta information for RBinObjects.  Now
RBinFiles are swapped out along with the RCoreFile when the priority is changed.
2014-01-20 02:44:25 +01:00
pancake
802e808072 Merge libr/lib into libr/util and add r_sys_environ API 2014-01-18 02:42:23 +01:00
pancake
e31d6492d8 Fix iOS entitlement and use the refactored disasm by default (let's test) 2014-01-18 02:17:01 +01:00
pancake
f48b810989 Fix #552 - Segfault with negative rahash2 -i 2014-01-18 02:06:56 +01:00
Maijin
c3c064c21c Resource leaks fix when no args 2014-01-17 00:12:18 +01:00
Maijin
f7f83c81d1 Resource leaks fix when no args 2014-01-17 00:12:05 +01:00
Maijin
82e10ed753 Resource leaks fixes CID 1134987 2014-01-17 00:10:09 +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
pancake
e7f6a785f5 Fix static linking of the binr/blob (android) 2014-01-05 00:56:20 +01:00
pancake
4a5165f232 Add missing Jamroot files in binr/ 2014-01-03 01:03:39 +01:00
pancake
98053a806d Fix bjam build 2014-01-03 00:43:22 +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
8711ca5928 Oops. another missing -lr_sign 2013-12-31 05:42:45 +01:00
pancake
7f28befc04 Fix static build 2013-12-31 05:40:16 +01:00
pancake
fd48902b12 Kill rsign deps 2013-12-31 05:32:18 +01:00
pancake
dba63fbd3c Add some Jam files and merge rsign into ranal 2013-12-31 05:30:39 +01:00
pancake
5223c0f578 Fix infinite loop stdin issue on EOF 2013-12-28 00:30:09 +01:00
pancake
785e3466af Refix static blob build 2013-12-14 12:37:35 +01:00
pancake
c49d48d739 Fix static blob build 2013-12-14 12:35:08 +01:00
pancake
bbe6e8c8a2 Add license to RBin, RDebug and RIO plugins 2013-12-10 04:19:04 +01:00
pancake
322a8a7654 Fix build for latest refactoring 2013-12-06 05:18:57 +01:00
cquaid
afa7c2bf99 Enable elf64 output in ragg2 2013-12-05 14:38:54 -06:00
pancake
af6c71417a Show plugin path in r2 -hh, add r_str_rmch() inline 2013-12-04 02:35:10 +01:00
pancake
10091ed87c Fix build 2013-12-04 00:24:51 +01:00
pancake
d02df0d306 Fix some issues reported by CoverityScan service 2013-12-03 00:14:59 +01:00
pancake
7d70f79755 Fix #399 - Add .license to all plugins 2013-12-02 04:44:26 +01:00
pancake
7caa013414 Handle system= rule in rarun2 2013-12-02 00:56:23 +01:00
pancake
399a48da34 Fix libr plugins path 2013-11-28 05:51:09 +01:00
pancake
da8c0a420b Fix ranal2 build, remove ningb debug-printf 2013-11-28 05:07:32 +01:00
pancake
a55cabd3af Fix android build 2013-11-15 01:30:11 +01:00
pancake
93d92f0273 Add -lrz in rafind2 linkage 2013-11-14 23:38:14 +01:00
pancake
1681982d34 Fix android linkage of r_zip 2013-11-14 23:32:34 +01:00
pancake
ab7e57d568 Handle '0x' in rasm2 -d 2013-11-14 04:24:29 +01:00
pancake
816560dffe Fix #245 - rasm2 -d -f inconsistence 2013-11-14 04:01:48 +01:00
pancake
a249adb519 Fix #358 - ragg2 now can create binaries from .asm/.s files 2013-11-14 03:32:12 +01:00
pancake
13707310aa Fix android library mismatch warning 2013-11-10 05:09:36 +01:00
pancake
1b2ba18c0e Fix #270 - ragg2 crashs on false-conditions loops 2013-11-10 04:33:12 +01:00
pancake
75b59283d8 Fix #318 - file.analyze doesn't work 2013-11-09 03:34:11 +01:00
pancake
ec9b04e758 Fix #319 - Fix recursive loading the same script 2013-11-09 03:25:43 +01:00
pancake
b97e19cae3 Fix #323 - rabin2 should provide an option to show everything 2013-11-09 03:11:03 +01:00
pancake
a0d5af1875 Fix #310 - Wrong disassembly when seeking backwards
Handle ~/.config/radare2/radare2rc script
Add 'cls' command
Use '?' instead of 'K'
2013-11-07 02:07:10 +01:00
pancake
1a3ffe1fc0 Fix 'r2 -s0' issue (reported by cipher) 2013-11-06 10:42:00 +01:00
pancake
e63271e688 Fix build 2013-11-06 01:36:40 +01:00
pancake
f1c9943df2 Fix #313 - Add bin.baddr and r2 -B to set base address for r_bin 2013-11-06 01:32:24 +01:00
pancake
497cb0e2e1 Fix #57 - 'is' does not work for attached process 2013-11-04 03:30:46 +01:00
pancake
cbecfb8f4a Initial import of rahash2 '-S' seed and '-i' iterations 2013-11-02 11:49:32 +01:00
pancake
629c64c851 Fix 'dr=' columns width for 64bit registers 2013-10-31 01:53:17 +01:00
pancake
d900345a66 Fix #266 - [ragg2] exit on invalid input (again) 2013-10-28 02:05:18 +01:00
pancake
bec4f5b63a Fix radiff2, Ps segfaults and ARC syntax
- Fix some nullptr derefs on uninitialized graphdiff structs
- 'ar' is now r_cons compliant and rnum friendly (add arj)
- Fix some arc disasm syntax issues
- Fix segfault when saving analysis info in projects
- ARCompact analysis needs to be rewritten
2013-10-24 13:59:19 +02:00
pancake
d025bd66f3 Fix #287 - ragg2 segfaults on uneven number of accolades 2013-10-24 00:51:26 +02:00
pancake
f02b0b2940 Minor refactor in rax2 2013-10-16 23:25:35 +02:00
pancake
502add8914 Fix #240 - rasm2 have -l but not -S to skip bytes from the beginning of the file 2013-10-15 01:54:37 +02:00
Eduardo de la Arada
7af16bdd34 Fix Issue #257 2013-10-14 16:15:55 +02:00
pancake
2cfa371ccd Library version check only happens in r2 -v 2013-10-08 05:06:00 +02:00
pancake
32816c4669 Rewrite the code flow analysis logic 2013-10-08 04:58:51 +02:00
pancake
a1a2e38363 Fix #243 - rahash2 -s flag order matters 2013-10-06 18:55:02 +02:00
pancake
88278928f5 Handle '@' and ':' and '"' strings in rarun2 args 2013-10-06 18:44:26 +02:00
pancake
117a462424 Fix rarun2 preload for latest OSX. Add il help and fix R_EGG constants 2013-10-06 03:54:19 +02:00
pancake
653881eb3a Merge and fix jvoisin #235 #236 2013-10-04 13:57:49 +02:00
pancake
913a6484cd Fix 'entry0' warning 2013-10-01 17:21:29 +02:00
pancake
08cce66e68 Initial arm64 analysis. Fix loading mach0 kernels. Fix #230 2013-09-30 03:49:08 +02:00
pancake
4caad05a0a Fix r_cons_flush race condition in rabin2 2013-09-27 20:24:59 +02:00
pancake
06b02592d5 Fix crash in rabin2 (unnecessary free of const string) 2013-09-27 20:14:18 +02:00
pancake
6315842d5b Add 'unsetenv' and 'envfile' directives in rarun2 2013-09-17 17:27:52 +02:00
pancake
92bdbf0c0a Add scr.fgets and fix rax2 -s for emscripten 2013-09-16 04:08:08 +02:00
pancake
c1629360f9 Better rax2.html - See http://rada.re/js/rax2 2013-09-16 02:50:37 +02:00
pancake
dece987ca3 Fix various bugs on 64bits (mach0 entry, assembler, ragg) 2013-09-14 02:42:02 +02:00
pancake
3b90a8c10a Fix search.in debugger mode 2013-08-29 08:43:43 +02:00
pancake
ee36691017 Oops 2013-09-07 02:23:28 +02:00
pancake
18cc767292 More emscripten/android build fixes 2013-09-07 02:20:38 +02:00
pancake
cc5122e3bd Working emscripten build 2013-09-07 01:35:11 +02:00
pancake
7855f4952f Initial work supporting emscripten compilation 2013-09-07 00:39:08 +02:00
pancake
3ff36c3965 Fix #205 - rax2: fix misuse of read on stdin 2013-09-03 19:29:33 +02:00
pancake
0e4db84071 Fixes for blob build 2013-08-30 02:59:20 +02:00
pancake
9c409a3c6a Update pkgconfig files 2013-08-30 02:50:19 +02:00
pancake
7c07e1af75 Fix libsdb.a linkage of blob 2013-08-30 02:45:27 +02:00
pancake
b685457e84 Fix #180 -- Add system-wide radare2rc 2013-08-27 01:45:30 +02:00
pancake
fb610cdc62 Update sdb and fix android build 2013-08-26 02:43:15 +02:00
pancake
9850c0a3c3 Fix some warns and enhace GIT_TAP in makefiles 2013-08-26 01:07:21 +02:00
pancake
e1bdd9e64f Fix #171 autodetect script by extension, Initial work on 'ts' 2013-08-17 19:53:04 +02:00
pancake
dd5421a5f9 Enhace @earada's patch to fix double free in 'dm' api 2013-07-25 15:18:34 +02:00
pancake
5cc7466191 Enhace rasm2 -D output 2013-07-08 03:38:44 +02:00
pancake
4815f5c9bf Fix segfault when no file is given 2013-07-04 03:43:27 +02:00
pancake
63c57a1c99 Remove debugger program arguments limit in -22LOC 2013-07-03 16:09:50 +02:00
pancake
92b50950e4 Fix 'r2 -d ls /' launching program with arguments 2013-07-03 01:38:03 +02:00
Eduardo de la Arada
8a93b6a83d * Add relocs json output
* Fix rabins's homeplugdir
2013-07-01 17:05:15 +02:00
Eduardo de la Arada
f6173bdaf0 * Fix json output for undefined flags
* Add json output to bin_fields
* Fix typo at visual_mounts
2013-07-01 16:29:47 +02:00
pancake
ac4cedae53 Install radare.lua for libr/r_lagn/p/lua 2013-06-28 17:21:25 +02:00
pancake
8377c98458 Use xdg configuration path ~/.config/radare2/ 2013-06-27 19:15:59 +02:00
pancake
a9b438afae Fix build order issue, r2agent -s (sandbox mode), update rasm2.1 manpage 2013-06-25 17:35:36 +02:00
pancake
04cfefb9d8 Fixes on dyldcache list and x86 branch analysis
Fix some branch analysis issues for x86
Add new simpler r_reg api r_reg_getv()
Store library offset in dyldcache xtract info
Accessible via rabin2 -A or r2 <file>
Looks like dyldcache is too slow and buggy for latest caches
Fix indentation in branch comments
2013-06-20 02:49:39 +02:00
pancake
edc6d4086b Fix uninitialized use of project file buffer
And fix some minor typos
2013-06-18 12:15:11 +02:00
pancake
ef781cbadd New flag rasm2 -c CPU. pointer hints, fix analysis of x86-16 jmps
Add ahp (pointer hints)
Add rasm2 -c flag to select cpu (wip for arm)
rasm2 -e toggles instead of setting
Fix analysis of absolute jumps in x86-16
Push and pops are now magenta \o/
2013-06-17 03:26:48 +02:00
pancake
d6de30eba4 More R_LIB_VERSION and initial r_asm_set_cpu() dummy api 2013-06-15 02:56:25 +02:00
pancake
6eacc1284a Fix build 2013-06-14 03:05: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
ced24c443d Load <file>.r2 if exists, last 3 args of 'S' are now optional 2013-06-09 01:09:47 +02:00
pancake
d0f0975d69 Add doc/haiku, r2 -V = -v, fixes for emscripten build 2013-06-07 13:21:51 +02:00
capi_x
c9eb90adbc Add initial Haiku support 2013-06-06 00:21:52 +02:00
pancake
9f02ab38f8 Use git describe --tags in version info 2013-06-06 00:12:36 +02:00
pancake
e5cdab6d20 Fully configurable console palette for disassembly, hexdump and prompt
- Fix overflow in r_cons
2013-05-23 02:26:48 +02:00
pancake
9d65bfe70c Initial r_cons palette support. See 'ec' command 2013-05-22 04:22:49 +02:00
pancake
074e92646e Refix build 2013-05-22 02:01:30 +02:00
pancake
9081357549 Fix build 2013-05-22 01:54:50 +02:00
pancake
16ddff4eb9 More work on ESIL, and implement r2 -Desil .. 2013-05-20 03:00:49 +02:00
pancake
356640967b Fix double warning for -zz and add support for openSUSE in mingw32.sh
- Fix mingw32 build
- Fix double warn for -zz
- Some code indentation in c55plus code
- mingw32.sh now supports openSUSE
2013-05-17 01:42:24 +02:00
pancake
774e6b750f Check 'malloc' return values in r2agent (netbeisser) 2013-05-16 13:48:45 +02:00
pancake
9c8692ab06 Some udis86 anal fixes, update sdb and fix mingw32 build 2013-05-14 01:53:52 +02:00
pancake
f6a8d7b3b8 Initial import of binr/r2agent 2013-05-11 01:58:05 +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
3c62d1905a Fix rarun2 stdout and stderr pipes
dcu requires argument to work
Enhace rarun2 manpage
Fix rax2 -B for negative values
2013-05-05 19:39:01 +02:00
pancake
0aaa61f7d2 Store CFLAGS in configure, fix build race condition and rabin2 -zz
- Try to fix the race condition in build
- Fixes for rabin2 -zz (show strings when opening an unknown file type)
- Store CFLAGS and LDFLAGS at configure stage
2013-04-26 03:15:39 +02:00
pancake
26a7854dd6 Rewrite DEX parser 2013-04-25 03:42:17 +02:00
pancake
d1459f5665 Add r2 -A and -k, implement stackptr for udis86, update manpage 2013-04-23 03:38:39 +02:00
pancake
f52fdf762f Fix armthumb disasm, 64bit inc/dec on x86, syscall in r_asm
- rasm2 -k to select kernel like ragg2 does
- rasm2 -k linux -b32 'mov eax, $sys.write'
- Implement x86-64bit INC and DEC
- Add x86-8 and x86-64 bit calling conventions in r_syscall
2013-04-22 01:09:27 +02:00
pancake
68ae2c4463 Fix rasm2 -d - (without -f) 2013-04-22 00:05:35 +02:00
pancake
11db8e1c50 Fix build (dirent->d_namlen is not portable) 2013-04-18 10:06:28 +02:00
pancake
8afdf330ae List and remove projects using '-p' and '-p -$prj' 2013-04-18 09:39:37 +02:00
pancake
59670523e2 Initial transition to sdb: anal.xrefs
- Cascade core_project_save > anal_project_save > anal_xrefs_save
- Database is stored into ~/.radare2/rdb/$prj.d/xrefs
- Build libsdb properly to get access to all the api
- Use sdb from r_anal_xrefs() - needs cleanup
- Update sdb to the latest version from git
- Fix some warnings
2013-04-18 03:58:44 +02:00
pancake
96d1a1141b Fix invalid flag name filtering issue and add rax2 -t (timestamp) 2013-04-16 01:48:03 +02:00
oblique
e21b70ab85 radiff2: fix show count 2013-04-11 22:11:48 +03:00
pancake
9894b0075e Add 'rax2 -u' to get aproximated units measure for given value 2013-04-11 01:30:46 +02:00
pancake
99430303e4 Deprecate rabin2 -V.. use rabin2 -v everywhere! 2013-04-05 03:16:42 +02:00
pancake
3aa549ecb0 Share version function between all commands. Fix #76 2013-04-04 02:32:13 +02:00
pancake
735a4f7a4a Fix -h and manpages. Kill rsc2 and rasc2 from binr/ 2013-04-02 12:11:20 +02:00
pancake
0f807f1bdb Honor RASM2_{ARCH|BITS} environment in rasm2
Alphabetically sort the options in rasm2 -h
Globally defined nibble definitions
2013-03-28 18:43:55 +01:00
pancake
83259dbd1e Fix load ELF64 and remove debug printf in binr/blob 2013-03-12 14:31:24 +01:00
pancake
dc7289e1f3 Fix rabin2 -O help, rahash2 -a all -s, add filter input
Added input filter in r_cons/dietline to avoid trashy chars
rahash2 -s now works with multiple -a
2013-03-10 14:27:01 +01:00
pancake
50408b2e8a Add rahash2 -q and fix -a crc32 endianness issue 2013-03-05 19:59:29 +01:00
pancake
cea398e345 Add rax2 -n for binary numeric values 2013-03-05 01:28:32 +01:00
pancake
27c38164cf Fix race condition in make and exit status of rahash2 2013-03-04 00:44:46 +01:00
pancake
007faa5f61 Fixes in radiff2 2013-03-03 17:47:07 +01:00
pancake
242b820647 rahash2 accept multiple files, fixes for http_client and r_num_rand 2013-03-03 17:28:06 +01:00
pancake
5d67033220 Support == in conditionals, Add r2 -C to connect 2013-03-03 06:00:57 +01:00
pancake
133f2dc157 Better r2 -L output. Sync spaces with rasm2/rabin2 -L 2013-03-03 03:23:52 +01:00
pancake
b6b756521d Add rahash2 -n to specify number of blocks instead of blocksize 2013-02-28 09:50:59 +01:00
pancake
a7925a8a4f Add aach64 (ARMv8) support to the ELF parser 2013-02-26 15:35:24 +01:00
pancake
57503ff1fe Fixes for arm64 disasm, string filter in rarun2 arg directives 2013-02-26 09:27:09 +01:00
pancake
25529090fe Add xxhash algorithm and add rahash2 -L 2013-02-25 03:23:13 +01:00
pancake
7fbe9071ce Add rasm2 -w to describe opcodes, fix massemble
Add rasm2 -w to get opcode description
Fix multiopcode/multiline comments parsing
Avoid multiple load when there are no sub-bins
Fix r_str_replace_char
2013-02-24 21:12:30 +01:00
pancake
8186395ebd Fix rax2 -S and ragg2-cc -x, better radiff2 error msg
rax2 -S is now obeying 0 input length for stdin streams
ragg2-cc -x is now working properly (needed rax2 -S)
Fix stupid parsing bug introduced in previous commit in armass
2013-02-19 21:21:39 +01:00
pancake
53b7f83749 Fix rafind2 help, honor rasm2 -l and fix objc demangle
Fix overflow in objc method name demangling
2013-02-15 13:24:09 +01:00
pancake
d5c68d9766 Add rafind2 -Z, fix rasm2 -dfB, check chroot() return in rarun2 2013-02-14 20:08:42 +01:00
pancake
1daa05e125 Merge branch 'master' of github.com:radare/radare2 2013-02-13 01:31:12 +01:00
pancake
766563cc6e Big endian for arm.winedbg and addn randomart in rax2 -k
r_asm: Add support for big endian arm.winedbg
rax2: Add -k randomart to rax2, -k is now -B
rax2: Handle multiple flags on a single argument
rax2: update manpage
2013-02-13 01:20:42 +01:00
pancake
fe50744f7e Fix crash when trying to rahash directories 2013-02-12 09:41:53 +01:00
pancake
b5ee410124 Fix offset in randomart for rahash2 2013-02-12 02:55:22 +01:00
pancake
84270da643 Add randomart print mode (pk/pK commands and rahash2 -k)
Random code cleanup
Remove borders in webui/two
2013-02-12 02:42:34 +01:00
pancake
f70dbe784b Fix --host crosscompile (acr 0.9.2) 2013-02-06 11:47:31 +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
b228ed9093 Complain when trying to interpret unexistent files (-i) 2013-01-24 16:35:08 +01:00
pancake
4c2ad6cd58 Fix build 2013-01-23 00:51:25 +01:00
pancake
fc9301b14b Add hints and named print formats and more
Initial implementation of anal hints (ah?)
Use anal hints in core/disasm. Needs more work
New data structure StrHT (string hashtable)
Simplify core/libs.c with cpp macros
Added r_cons_color() wip function for ansi256 consoles
RPrint no longer depends on r_cons
Sort 'a?' help commands
Add support for named print formats with pf$ command
Add support for 64 bit string pointers in 'pf' ('S')
Add r_print_mute and r_print_format_length functions
Bump r2 nodejs bindings version number
Merge r_print into r_util
2013-01-22 05:06:12 +01:00
pancake
30cfe3f15c Initial working enyo console 2013-01-15 00:23:10 +01:00
pancake
da837ad4ce Fix static build. Generate single libr.a 2013-01-04 14:38:07 +01:00
nion
b8a02eb703 rasm_asm: do not free acode result before returning its length 2013-01-03 16:13:39 +01:00
pancake
3fb4c7dd5e Use encodeURI in r2.js and implement http upload support 2013-01-02 18:37:48 +01:00
pancake
562480a01d Fix build again O:) (thanks vsp) 2012-12-29 19:27:08 +01:00
pancake
6a186b72b0 Fix issue #43 Thanks @ggonzalez 2012-12-29 02:21:42 +01:00
pancake
d8f0ea6ed9 Use RCore in rabin2 to fix nullptr in RConfig (fixes #44) 2012-12-26 02:01:26 +01:00
pancake
48f710abe8 Share RBinJavaObj to RAsmJava plugin, better java and fixes in config
Some more work to get java support back (analysis, disasm, bin share)
Honor ordinal field in java r_bin methods
Fix segfault in 'af*' on FreeBSD (thanks idwer for reporting!)
Fix some valgrind warnings
Better io.maxblk handling
Fix div by zero when blocksize is 0
Fix disasm lines when no function and extra code comments
2012-12-20 11:31:38 +01:00
pancake
03ef6071c7 Define evals before loading bin, honor bin.rawstr=0 by default 2012-12-13 09:22:17 +01:00
pancake
58371d6e2f Add rabin2 -N flag to set minimum string length
By default is 2, but PE which is 4
Sort rabin2 -h flags alphabetically
Add r_bin plugin-specific minimum string length
New r_list_newf() constructor which replaces the hacky R_LIST_NEW macro
2012-12-09 01:39:27 +01:00
pancake
4d50d27dc2 Fix build 2012-12-07 12:20:08 +01:00
pancake
84002a421f Better new WebUI, fix pdf,pD, implement http.timeout and more
Enhacements in the new webui
Fix r_socket_block_time()
Implement assembler for the 1bit arch RAR (wip)
Fix pdf, pdb and pD (print_disasm)
Implement http.timeout and http.sandbox
2012-12-03 04:01:55 +01:00
pancake
07d27512ee Append fatmach0 index in extracted filename
Fix the segmentation address in ? command
Fixes for the r2bot
2012-11-29 04:07:59 +01:00
pancake
b1e30e731b Fixes for the r2irc.js bot and various consistency in core 2012-11-27 14:09:53 +01:00
pancake
f44dbb1d1e Honor DEBUGGER userconf var in r2 -d 2012-11-22 18:21:44 +01:00
pancake
8ea25c4a46 Use RNum in RAsm, fixes for segoff and better disasm
Reference of RNum in RAsm (use flags in 'wa/pa'!)
Use RNum in x86.nz plugin
Rename scr.segoff to asm.segoff
Fixes for segmented addressing resolution
Honor lineswidth in disasm
Remove rabin2 -p flag in help and manpage
Fix disasm.c loop for small blocksizes and invalid ops
2012-11-16 01:34:26 +01:00
pancake
23bd67ce59 Fix 'invalid' instructions in disassembly (reported by xvilka) 2012-11-13 04:09:59 +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
07929b169d Add Quiet and JSON in RCoreBin, more awk, fix rafind2
Use rabin2 -j flag to get JSON output
You can also get those jsons using the i?j command
Better awk bindings and added some examples
rabin2 -v (without any other arg) shows version
Fix some segfaults in rafind2 and use RList
Add quite output mode for rabin2 (activated with -q)
2012-11-02 03:35:50 +01:00
pancake
a0d099bff1 Honor iomaps in search ranges and add basic awk bindings
Honor iomaps on search.to
Initial import of the 'awk bindings'
Honor search.{from|to}
2012-10-31 21:32:33 +01:00
pancake
6e14bc6725 Fix --with-rpath 2012-10-29 13:15:18 +01: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
082adc171d Minor fixups 2012-10-24 09:51:56 +02:00
pancake
f473a4d02b Load bin info in debugger and some doc/sys cleanup 2012-10-23 18:44:32 +02:00
pancake
7f5a84b57a Add new code analysis vars and update manpages
rasm2 defaults -o to 0 instead of 0x8048000
fixes in rarun2 to make it more userfriendly
update some manpages with examples
enhace output of 'afi' command
fix 'pi' bug setting blocksize
fix 'pdi' bug ignoring user defined len
add $C $J $X and $F $I code analysis variables
run r2irc.js in sandbox mode
2012-10-22 02:28:42 +02:00
pancake
792e8b8bdf Fix parallel build 2012-10-04 01:49:04 +02:00
pancake
3540924f40 Better paralelization of build system 2012-10-04 01:20:00 +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
20da730321 Fix android build 2012-10-02 04:15:00 +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
5a80b9c13b Fix ragg2-cc on osx, implement radiff2 -r 2012-09-21 02:47:07 +02:00
pancake
4909348b6e Fix disasm and autocomplete af* commands
Fix typos in help messages
Show 'b' where breakpoints are
2012-09-20 23:32:20 +02:00
pancake
38c9ea2082 Fix segfault when using -e 2012-09-19 12:50:12 +02:00
pancake
6a2de12266 Fix httpd shutdown and -e flag order in r2
Fix test case by ordering -e flag in r2
Fix httpd shutdown with ^C
Fix width of r2w2 when changing orientation
2012-09-07 12:49:36 +02:00
pancake
7fc1614cb5 Fix android build, update sdb code from git 2012-09-06 11:01:17 +02:00
pancake
be247348b5 Rename r_file_exist into r_file_exists 2012-09-06 08:59:13 +02:00
pancake
46e29afb98 Initial working web ui: r2 -c =H /bin/ls
Autodetect osx, win, linux and android browsers
Default port is 9090
Add support for local networking in RSocket
Add r_str_unescape() helper function
Fix htmlgraph.sh script.
Added wwwroot in shlr/www
Swap eval/cmd load order in r2
Add r_core_cmd_str_pipe()
Use RCons in 'fs'
2012-09-06 03:12:54 +02:00
pancake
fd506992ba Fix build for z80 after sdb integration 2012-09-04 09:29:41 +02:00
pancake
3b65f42167 Update sdb to 0.5, sdb is now public api
Update pkgconfig files
sdb now supports json and cas operations
sync pair.c to use the new cas api
2012-09-04 01:46:12 +02:00
pancake
f2db41ce3b Fix some bugs in cparse and ragg2-cc with gcc 2012-09-03 18:49:29 +02:00
pancake
76ccb4d8c6 Honor -e priority in r2, add dalvik pseudo disasm
r2 -e now evaluates before and after loading file
Dalvik pseudo disassembler is work in progress
2012-09-03 03:07:16 +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
7b627d24a2 Fix mingw32 build 2012-09-01 01:06:24 +02:00
Rodrigo Chiossi
f723d8c126 Fix rasm2 infinite loop for -D option.
The fix in commit d843506ae1 was checking for ret < 0, but as ret is initialized with 0 rasm -D would always finish after a single instruction.
This commit reverts to the previous commit and adds a check to see if the end of the buffer was reached.
2012-08-30 13:47:14 -03:00
pancake
d843506ae1 Rewrite mips analysis module and fix rasm2 -D
Full rewrite of the MIPS code analysis module. wip
Fix infinite loop in rasm2 -D
Fix clang-analyzer.sh
Fix 'ao #' command
Use ', ' instead of ',' in mips disassembler
2012-08-30 18:06:18 +02:00
pancake
e46efa8a1d Initial implementation of r_bin_size (rabin2 -Z)
Changes in the disasm loop to support continuous fun
Fixes disasm after opcode payload
Added RConstr code in r_util (not yet used)
RBinSize implemented for elf, mach0 and plan9
Fix build
2012-08-23 12:46:55 +02:00
pancake
f75817ee6c Initial work on supporting payloaded opcodes
Basic classes support for dalvik (rabin2 -C, ic*)
2012-08-22 18:02:23 +02:00
pancake
0e82165bf7 Honor make -s and lot of build cleanups 2012-08-14 15:44:17 +02:00
Roi Martin (@nibble_ds)
6b959de543 Do not install ranal2 2012-08-14 11:47:50 +02:00
pancake
ef8f41eafb Initial integartion of r_bin_dwarf into RCore 2012-08-14 02:37:42 +02:00
pancake
6b991786ab Show git-tip hash in r2 -v
dist now contains r2-bindings directory
use more parse locks in mk files
do not add invalid functions at UT64_MAX
Use -j8 in sys/install.sh again
2012-08-14 01:48:39 +02:00
pancake
e365b90d5f Implement support for >- (pipe to editor)
Fix another race condition in the build system
Fix many null deref reported by clang-analyzer
Assume -w when running r2 with -d
2012-08-13 17:42:25 +02:00
pancake
f9795e03f9 Force proper deinit in r2.Helpful to find memleaks 2012-08-13 14:14:23 +02:00
pancake
70fbad1b83 Show second hexdiff column when it fits in screen
Throw error if cannot find '-i' file
2012-08-13 05:10:04 +02:00
pancake
85534da1e9 x86.nz assembler: add jmp/call abs/rel (rip) memrefs
Add some more notes in INSTALL text
Initial design work on dalvik payload instructions
Open '-' virtual file as read-write (r2 -)
Fix r_core_yank_to signature
Remove io.va search warning (no more issues?)
2012-08-09 12:42:44 +02:00
pancake
3fb3f58fcd Add missing dalvik opcode, rename invoke-direct-empty
rabin2 -h works even with other flags passed
random syntax fixups and use R_NEW0 where possible
initial dummy implementation of r_bin_size()
2012-08-07 10:28:03 +02:00
pancake
9362041562 Huge RBin refactoring and fix mach0 section perms 2012-08-04 23:48:06 +02:00
pancake
526a8a66fe Fix function renaming and add some 8bit x86 ops
- 'afl' is now just listing functions
- Use 'afl*' to get also 'loc.' functions (BBs)
- Fix length in cb_hit for search
- Fix infinite build in libr/egg
- Fix 'afr' command to rename function
- Implement 8bit mov, (out,in)sb in x86.nz
- Fix ragg2 -d for one byte writes
- Fix vapi
2012-08-02 02:44:46 +02:00
pancake
a260da522c Various build issues have been fixed
Fix build of libr/anal/cparse
r_list.h was not including r_types.h
check null pointer in r_asm
Fix 't' help message
Obey q! in scripts
2012-07-20 17:14:28 +02:00
pancake
61a10eb2aa rarun2 now supports connect/listen with r_socket
Use SO_REUSEADDR in r_socket_listen ()
2012-07-13 02:03:36 +02:00
pancake
253047bb1c r2 -q flag now quits after processing -c or -i
Allow to load multiple files with -i
Create file if not exist when -w is used
Warn when finding 'q'
2012-07-13 01:23:05 +02:00
pancake
c814a9f67a Initial implementation of dwarf debug_line parser
rabin2 -d a.out
2012-07-12 02:47:04 +02:00
pancake
3ffbba7aec Fixes in the debugger, for osx, software stepping and rax2
- Protect possible index out of array in osx register code
 - Fix possible segfault in debugger backtrace
 - Fix osx debug register state write
 - Fix software stepping. Needs more work and test on mips
 - New flag: rax2 -d . force integer output value (no hex or so)
 - Fix 'i' command output
2012-07-06 19:30:17 +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
7a4a3dbbfd Fix string parsing in rabin2 -z and more random fixes
- Random changes in libr/db/pair.. still buggy
 - remove debug printfs from calc.c
 - ?k command is now more usable. supports ``..` strings
 - fix segfault in r_cons (nullptr)
 - Add support for !! command to use r_cons
   > pd|!grep eax~ebx   # now this command works
2012-07-02 00:38:02 +02:00
pancake
fdb25ffa03 * initial import of dummy dwarf support
* handle eval cuando escribes una y otra vez
* add support for [bracket] comma-separated list for controversial
  - add api to push-back states
* Added uleb128 api in r_util
2012-06-28 01:27:40 +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
fee1dfda07 * Fix some bugs reported by clang-analyzer 2012-05-31 02:41:45 +02:00
pancake
36b7ae9361 * Add step over hud command
* Fix code analysis blocksize issue
2012-05-30 18:50:29 +02:00
pancake
bdc810af35 * Fix rabin2 -O without filename output 2012-05-30 03:32:20 +02:00
pancake
810d9a3dbc * Put rax2 buf in .bss instead of the stack
* Add support for wide string dump in r_bin
* Fix detection of data section in PE
* Show error if temporary seek flag does not exists
* Fix wrong disassmbly with 'pd' (invalid)
2012-05-30 03:23:53 +02:00
pancake
906275f98e * Fix echo - | rax2 -S bug
* Do not show fortunes if -q is passed
* Add support for anonymous macros
* Add support for quoted strings and backspaced
  spaces in macro arguments
* Fix r_num_get call from calc.c (a +3 == a+3)
2012-05-25 01:14:49 +02:00
pancake
1d9668cb8e * Bugfix for binr/blob 2012-04-01 02:16:20 +02:00
pancake
cafc5c920a * Fix android blob build 2012-04-01 01:40:04 +02:00
pancake
d7945d3d59 * Use blob for android builds 2012-03-31 23:56:13 +02:00
pancake
dade672d98 * Add binr/blob to build r2 like busybox
- Single binary with symlinks (main dispatcher)
2012-03-31 23:46:46 +02:00
pancake
c1990919d2 Update ldid xml from crackulous 2012-03-12 12:44:07 +01:00
pancake
a9deaed6cc * binr: Add the rule ${BIN}${EXT_EXE} as dep of the all rule
- patch by ac1d3
2012-03-09 01:34:04 +01:00
pancake
621d78cff4 * add support for floating point arithmetics in r_num_calc
* show r_num_math parsing errors to stderr
* add rax2 -f to show result in floating point
2012-02-14 05:26:41 +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
24300b79a7 * Add build timestamp in r2 -v
* Swap -n/-N .. to keep backward compatibility
  - Remove useless printf message
* Fix segfault in /c?
* Fix r_line_hist_load() newline issue
2012-02-05 02:22:31 +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
370c4ceed5 * Some usability enhacements for the visual hud
* Do not load huge sections. crappy bins!
2012-01-31 03:34:23 +01:00
pancake
29166cc940 * Initial import of the hud input method for the visual mode
* Use '_' key in visual mode to enter in hud mode
* Support mach0 files with multiple sections with same name
* Fix parsing of commands with nested quotes
* rename ?z to ?l
* added new command ?y to get and set yank buffer contents to stdout
* ?i stores the input into the yank buffer now
* ?I accepts a file name as argument which is loaded as hud
* ?k used as key=value temporal storage
* Add calc.c .. plans are:
  - support proper parenthesis in math.c
  - support floating point arithmetics
2012-01-31 02:45:17 +01:00
pancake
840550aa3a * Add asm.tabs for bearuty for free (enable by default?)
* Apply @l0gic patch for ELF parsing segfault
* Improve a lot the startup time by using r_file_mmap
* Fix build on osx
2012-01-26 03:18:45 +01:00
pancake
f908b15fb5 * Fix android compilation
- Fix static build
  - Fix dupped symbols
* Fix all errors reported by clang-analyzer
  - Some null dereferences
  - Some uninitialized variable uses
* Fix all important warnings from the farm
  - Remove *all* uses of alloca
  - Fix many %llx format string portability issues
* Fix manpage typos reported by lintian (thanks sre)
2011-12-06 00:27:57 +01:00
pancake
dc1efdcdd8 * Add manpage for ragg2-cc
* Fix rax2 -S (by @earada, reported by @sre)
* Fix typos in manpages reported by lintian (thx @sre)
* Add r_core_file_reopen()
  - 'do' is an alias for 'oo'
  - close previous file
  - breaks debugger reopen .. needs more work
2011-12-05 02:42:06 +01:00
earada
bdd3bf9f06 * Update rax2 manpage 2011-12-04 02:44:58 +01:00
earada
b1f1ee2e33 * Update manpages 2011-12-02 03:43:08 +01:00
earada
3f72bede22 * Fix rafind2 2011-12-02 00:18:35 +01:00
pancake
65189bbe5c * Fix install of sflib
* Hide console write error

--HG--
rename : binr/ragg2/d/README => binr/ragg2/README
2011-12-01 15:37:47 +01:00
pancake
696961d15d * Cleanup for rsakey (still unused)
* Move sflib into libr/include
* Added r_file_size()

--HG--
rename : binr/ragg2/d/sflib/common/sfsocketcall.h => libr/include/sflib/common/sfsocketcall.h
rename : binr/ragg2/d/sflib/common/sftypes.h => libr/include/sflib/common/sftypes.h
rename : binr/ragg2/d/sflib/darwin-x86-32/sflib.h => libr/include/sflib/darwin-x86-32/sflib.h
rename : binr/ragg2/d/sflib/darwin-x86-32/sfsyscall.h => libr/include/sflib/darwin-x86-32/sfsyscall.h
rename : binr/ragg2/d/sflib/darwin-x86-32/sfsysnr.h => libr/include/sflib/darwin-x86-32/sfsysnr.h
rename : binr/ragg2/d/sflib/linux-x86-32/sflib.h => libr/include/sflib/linux-x86-32/sflib.h
rename : binr/ragg2/d/sflib/linux-x86-32/sfsyscall.h => libr/include/sflib/linux-x86-32/sfsyscall.h
rename : binr/ragg2/d/sflib/linux-x86-32/sfsysnr.h => libr/include/sflib/linux-x86-32/sfsysnr.h
rename : binr/ragg2/d/sflib/linux-x86-64/sflib.h => libr/include/sflib/linux-x86-64/sflib.h
rename : binr/ragg2/d/sflib/linux-x86-64/sfsyscall.h => libr/include/sflib/linux-x86-64/sfsyscall.h
rename : binr/ragg2/d/sflib/linux-x86-64/sfsysnr.h => libr/include/sflib/linux-x86-64/sfsysnr.h
2011-12-01 10:53:02 +01:00
pancake
8edef15e88 * Initial working import of the r_egg_xor encoder
- Fix r_egg and ragg2 accordingly
  - Based on @santitox patch. Thanks! :D
2011-12-01 03:28:12 +01:00
pancake
1cc5b8e077 * Honor -o in rabin2 for dump section operation
* Autodetect and honor CC environment in ragg2 command
* Update ragg2 manpage
* Fix udis86 at&t '$' usage.. thanks @hteso for reporting!
2011-11-30 20:59:58 +01:00
pancake
15abe21104 * Autodetect and honor CC environment in ragg2-cc
* Added dummy rsakey.c in libr/search
* Apply patch for big-gmp.c from @santitox (thanks!)
2011-11-30 18:05:46 +01:00
pancake
a0a53e8cc1 * Some more %llx fixes
* Fix ragg2-cc for linux-x86-32
2011-11-30 11:57:04 +01:00
pancake
ec7f601e2c * Add -d -D and -w flags to ragg2
- patch dword/qword and hexpair bytes on finalize
* Initial import of the dummy Shoorisu Yagana shellcode encoder
  - just a wishlist.. do not expect it for this release
2011-11-30 10:27:01 +01:00
pancake
ee69d01b9b * ragg2-cc now uses rabin2 instead of objcopy 2011-11-29 19:40:10 +01:00
pancake
048e9ea8ce * Fix some warnings related to alloca(), %llx and O_BINARY for w32
* sync sdb
* Add some more eval var descriptions
2011-11-29 12:28:02 +01:00
pancake
35d535095b * Install includes in windows dist
* Import linux-x86-32/64 and darwin-x86-32 sflib includedirs
* Simplify data installation for magic, egg, syscall and asm
* Set R2_INCDIR in r_userconf
* Make ragg2-cc much smarter
  - use ragg2 -v to get paths and version
  - accept new flags -a -b -k for arch, bits and kernel
  - supports crosscompilation

--HG--
rename : libr/magic/d/OpenBSD => libr/magic/d/default/OpenBSD
rename : libr/magic/d/archive => libr/magic/d/default/archive
rename : libr/magic/d/cafebabe => libr/magic/d/default/cafebabe
rename : libr/magic/d/cisco => libr/magic/d/default/cisco
rename : libr/magic/d/database => libr/magic/d/default/database
rename : libr/magic/d/editors => libr/magic/d/default/editors
rename : libr/magic/d/elf => libr/magic/d/default/elf
rename : libr/magic/d/filesystems => libr/magic/d/default/filesystems
rename : libr/magic/d/flash => libr/magic/d/default/flash
rename : libr/magic/d/freebsd => libr/magic/d/default/freebsd
rename : libr/magic/d/gimp => libr/magic/d/default/gimp
rename : libr/magic/d/images => libr/magic/d/default/images
rename : libr/magic/d/java => libr/magic/d/default/java
rename : libr/magic/d/jpeg => libr/magic/d/default/jpeg
rename : libr/magic/d/linux => libr/magic/d/default/linux
rename : libr/magic/d/mail.news => libr/magic/d/default/mail.news
rename : libr/magic/d/matroska => libr/magic/d/default/matroska
rename : libr/magic/d/mime => libr/magic/d/default/mime
rename : libr/magic/d/msdos => libr/magic/d/default/msdos
rename : libr/magic/d/netbsd => libr/magic/d/default/netbsd
rename : libr/magic/d/pdf => libr/magic/d/default/pdf
rename : libr/magic/d/perl => libr/magic/d/default/perl
rename : libr/magic/d/python => libr/magic/d/default/python
rename : libr/magic/d/riff => libr/magic/d/default/riff
rename : libr/magic/d/sniffer => libr/magic/d/default/sniffer
rename : libr/magic/d/sql => libr/magic/d/default/sql
rename : libr/magic/d/sun => libr/magic/d/default/sun
rename : libr/magic/d/uuencode => libr/magic/d/default/uuencode
2011-11-29 03:14:27 +01:00
pancake
54774d1d92 * Add support for x86_64 -linux to ragg2-cc 2011-11-28 14:13:44 -05:00
pancake
85122bec5b * Use INSTALL_SCRIPT to install ragg2-cc 2011-11-27 02:04:26 +01:00
pancake
a5cb0c7810 * Add ragg2-cc
- shellcode compiler using gcc or llvm-gcc as backend
  - inspired in shellforge, written in shellscript
  - works on x86-32 with linux and osx
* Fix rax2 -S for binary data
2011-11-26 05:14:03 +01:00
pancake
f1bee51c94 * Add ragg2 -C 2011-11-26 02:58:15 +01:00
earada
d0f81b8490 * Fix rabin2 -B baddr 2011-11-24 02:48:36 +01:00
earada
62c650b2a0 * Add graph.font=Courier eval var
* Use R_TRUE/R_FALSE instead of R_CORE_BIN_RADARE/R_CORE_BIN_PRINT
* Add notepad as windows editor by default
* Add 'T' menu at visual mode to show comments and anal info
2011-11-23 02:29:09 +01:00
pancake
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
c620b0dd3f * Fix search when io.va=true
- Add search.in = file, section, raw
* Set io.va=false rbin cant identify file type
* Show progress info in search
2011-11-19 02:49:11 +01:00
pancake
c5ca77e2dd * New commands:
- dmd and dml commands to dump/load debugger memory regions
  - Sd and Sl to dump/load debugger memory region from/to file
* Fix newline in r2 -h
2011-11-16 02:05:23 +01:00
pancake
da35ef8648 * Fix huge memory leak in r_anal_fcn_find() that was causing
r2 increase memory innecesarily when io.va=!io.va
* Add r2 -a arch -b bits
  - -b flag to specify blocksize is now -B
  - Sync manpage
* Added python test-leak program
2011-11-15 23:40:28 +01:00
pancake
cd35cf4508 * Added 'g' command to use r_egg api from RCore 2011-11-14 10:10:55 +01:00
pancake
cd96e35ec9 * Add ragg2 -e [encoder] to specify an encoder
- Added dummy 'xor' encoder. needs to be implemented
* Various fixes in libr/egg/p/*.mk -- requires make mrproper
* ragg2 -L list encoder and shellcode plugins

--HG--
rename : libr/egg/p/egg_x86_osx_binsh.c => libr/egg/p/egg_exec.c
rename : libr/egg/p/x86_osx_binsh.mk => libr/egg/p/exec.mk
2011-11-14 02:04:27 +01:00
pancake
33f045c3d6 * Add ragg2 -B to get user-defined hexpair bytes
* Use R_MEM_ALIGN() in r_egg_run() and rasc2
  - Fix execution of shellcode eggs
* r_egg plugins now support multiple architectures and operating systems
2011-11-14 01:17:13 +01:00
pancake
ac7f96bb0c * Add ragg2 -p to specify a padding
- Use the new r_egg_padding function
* Add support for continuations in rapatch2 '+' char
* Fix malloc(0) thanks to llvm's scan-build
* Fix build
2011-11-13 05:26:07 +01:00
pancake
94f905cfe0 * Do not build rasc2 anymore
* ragg2 now works better
  - Show bitsize in ragg2 -L
  - Added a sample plugin for x86-64 osx shellcode
    - command can be configured, suid can be enabled
* Minor fix in r_buf api

--HG--
rename : man/rasc2.1 => binr/rasc2/rasc2.1
2011-11-13 04:47:56 +01:00
pancake
e0fc376dab * Fix some t-*.sh scripts (rollback)
* Initial working version of shellcodes inside r_egg
  $ ragg2 -i x86.osx.binsh -b 64 -k osx -f mach064 -o a.out
  ragg2 -L : list all plugins
  ragg2 -i <shellcode-plugin> : select shellcode
  ragg2 -r : show raw bytes
  ragg2 -x : execute -- fails :(
* Use r_lib in r_egg
  - User defined shellcode plugins can now be loaded on runtime
* Fix append_bytes in r_egg api
* Implement r_egg option_{get|set}
* Use working shellcode for x86.osx.binsh example (64bit)
* Update pkgconfig templates
* Add -D flag to rasm2 (show hex and asm)

--HG--
rename : libr/egg/p/x86_osx_binsh.c => libr/egg/p/egg_x86_osx_binsh.c
2011-11-13 04:08:08 +01:00
earada
99919408e3 * Fix clean build 2011-11-12 22:36:42 +01:00
earada
ad006c9300 * Fix build
* Move libs and classes to r_core_bin_info
2011-11-12 17:15:05 +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
earada
4874de4569 * Refactorize rabin2 functionalities into r_core_bin_info
- r_core_bin_info shows bin data from core
- rabin2, file_load and cmd_info now uses this new api
2011-11-12 04:20:22 +01:00
earada
2fadc048e7 * RBin suport new section_end flags
* Add some filesystem automount support
2011-11-11 17:56:21 +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
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
1f7f9dc036 * Enhacements for rarun2
- add 'timeout' directive
  - directives can now be passed in arguments
  - support more than 3 args for launching
  - show default config file in help
* Added test suite for r_egg
  - Fix nested conditional and loops
  - Some situations can result in broken code
  - Code needs a huge cleanup
* Varioues fixes for x86.nz plugin to make r_egg happy
* Install python plugins into dist-packages only
  - site-packages is not the right place
* Add R2_LIBDIR and R2_PREFIX constants
* Honor LIBDIR in sdbpath for r_syscall
* Fix rabin2 -h for -C
2011-10-24 04:35:42 +02:00
pancake
37565f1ff5 * Fix shellcodes.c.src (do not use literal strings)
* Update vapis for r_asm, r_debug and r_fs
* Use anal_diff_setup() in test-ragdiff
* Sync radiff2 manpage
2011-10-20 15:05:30 +02:00
pancake
2ef1abb974 * Add -t flag to radiff2 to select code diffing match threshold 2011-10-20 02:14:35 +02:00
pancake
3b9420fad8 * More stuff to make --with-sysmagic work 2011-10-18 18:12:17 +02:00
pancake
04cbf68819 * Fix segfault in elf (thanks @earada!)
* Make cg and cgo work
* Added r_anal_diff_setup_i()
  - Fixed bindings
2011-10-16 13:59:05 +02:00
pancake
6c0318fa86 * Honor LIBDIR in syscall/d and magic/d
* Show similarity distance in radiff2 -C output
* Add -O flag to radiff2 to use diffops
* Diffing threshold for basic blocks and functions is now configurable
* Explicitly delete the asm object from the nodejs example
2011-10-14 10:09:53 +02:00
pancake
e9d1dcb4ec * Fix make w32dist
* Update manpages
* Added r2 -H for env and files help
* Add rarun2 -h
* Show assembler/disassembler features in rasm2 -L
* Add opcode 'mov dword [ebp-12],4' to x86.nz
  - Make t/test.nz work with x86.olly (32bit only atm)
* Fix unknown os issue with tiny-pe files in r_bin
* Fix some plugin names build fails in mingw32
* MAGICPATH renamed to R_MAGIC_PATH
* Add another experimental way to generate gir files
  - Added dummy test.js for nodejs
* Build python-dist in farm

--HG--
rename : man/rarc2-tool.1 => binr/old.rarc2/rarc2-tool.1
rename : man/rarc2.1 => binr/old.rarc2/rarc2.1
2011-10-12 03:24:19 +02:00
pancake
32afad2b65 * Fix build with clang
* Fix some warnings which result in more bugfixes. yay
2011-10-10 01:48:08 +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
ebb04f2e8f * Fix overflow in rasc2 (needs more work)
* Remove pragma pack(push) in x86im
* Remove analysis reference memory reads error messages
2011-07-03 01:51:20 +02:00
pancake
ce1d0e9975 * Fix sys for gmake (*BSD)
* Increase buffers in rasc2
2011-07-02 23:15:40 +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
4ea6ee9873 * Add new flags to r2
- -D : enable debugger mode for non native debuggers
  - -c cmd : execute a command before showing prompt
* Initial import of the bfvm (brainfuck virtual machine)
* Initial dummy implementation of the brainfuck debugger plugin
  - Needs to be integrated with bfvm to work
* Added doc/brainfuck
2011-10-07 03:10:44 +02:00
pancake
508963677b * Fix linking 2011-10-06 10:09:12 +02:00
pancake
098b1ba127 * Implement input and output filters for rasm2
- Experimental.. not yet ready for release
  - Add rasm2 -F flag to specify input and output filters
   $ rasm2 -F att2intel
* Add new att2intel r_parse plugin
  - make mrproper required
* Initial implementation of RBinClass
  - Only experimental and Java-specific atm
  - Add rabin2 -C to display classes
* Optimize some r_str functions
2011-10-05 02:38:37 +02:00
pancake
3b8c1e1b32 * Add support for incremental hashing in rahash2
- Enables working with huge files
  - Use -B to per-block-hash
* Initial dummy for 'ax' command
* Add 'pdb' command
2011-09-27 10:27:13 +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
0eb0eabd19 * Do not dist w32 test bins
* rahash2 now depends on r_io
  - support for huge files is wip
* Handle offset in afl command
* Fix libs.mk syntax issue
2011-09-23 12:25:06 +02:00
pancake
0217c146ef * Fix x86.nz -> push [esp+N]
* Use pw instead of px in debugger stack view
* Disable stackptr by default
* Add OSX-32bit debugger register map
  - Fix support for debugging 32bit bins in 64bit OSes
* Implement r_egg_run() -- just in time execution
* Fix r_egg string construction and argument passing
  - Still needs more work, but at least some hello worlds work
2011-09-21 19:51:09 +02:00
pancake
1b440bf9d2 * Add ragg2 -I to prepend include path directories
* Enhacements in r_egg library
  - Add support for including files
    - bla.r@include($PATH);
  - Proper support for goto() keyword
  - Add support to get and set environment variables (need more work)
    - PATH@env(/bin);
  - Fix /* */ comment parsing code
2011-09-20 01:53:15 +02:00
pancake
279d4e6f5f * Fix make deinstall
* rarun2 and rasc2 now depend on r_util
* Add r_mem_protect() as a wrapper for mprotect/VirtualProtect
* Fix segfault in java class parser

--HG--
rename : binr/rarun2/main.c => binr/rarun2/rarun2.c
2011-09-19 13:54:57 +02:00
pancake
0a14411bc1 * Added README documentation for libr/egg programming language
* Add -O flag to ragg2 as an alias for -o a.out or -o <file> (without extension)
* Add rabin2 -M (get main) for Java Class files
* Add emit_trace (code tracer) for r_egg. useful to debug
  - ragg2 -a trace hello.r
  - Add emit->jmp() function pointer and emit->retvar
  - many fixes in function calls and definitions
  - Added support for 'break;' 'break();' and 'goto();'
  - Added .ret variable as an alias for eax, rax or r0
2011-09-19 02:39:33 +02:00
pancake
838e6b7466 * Fix java class parser for javac -g files
- Show debug information in sdb format
  - Fix null pointer segfault
  - Still work-in-progress for proper debug info
* Some work on r_egg
  - Fix windows and osx default syscall tables
* Export version number in vapi R2_VERSION
* Hide ccache error if not found in sys/install
2011-09-18 18:56:11 +02:00
pancake
096b7eb406 * Fix mingw32 build 2011-09-14 12:37:26 +02:00
pancake
2edfc3495e * Re-enable r2 -t - use threads to load big files 2011-09-14 04:31:22 +02:00
pancake
cfccb47b0f * Fix build 2011-09-11 00:42:59 +02:00
pancake
0357ddf18e * Move rapatch into r_core_rapatch (r2 -P)
- Remove r_core deps from rabin2
  - Accessible via 'wp'
* Fix build check of test program in r_db
* Pass CFLAGS/LDFLAGS to sdb build
* Add rax2 -k to not change base
2011-09-09 09:49:55 +02:00
pancake
4d6c585672 * Add support for mach0-arm and mach0-x86_64 in r_bin_create
- x86_64 has been tested and works fine, but needs some love
  - the arm mach0 (iPhone) is not yet tested, but the bin looks ok
* Install syscall sdb files into versioned directory in lib/radare2
2011-09-09 01:09:36 +02:00
pancake
62cd212ba1 * Fix non-PIC/static build (apply Glyn patches)
* Fix entropy multiplication bug (Thanks Glyn!)
* btw.. previous patch added asm.case eval var
2011-09-08 15:47:05 +02:00
pancake
4af07f8f2f * Fix linkage of rabin2 in OpenBSD 2011-09-06 17:12:45 +02:00
Nibble
ee8ca52b57 * Add decode str to ranal2 output
* Fix syscall installation
2011-09-04 17:47:26 +02:00
Nibble
0f8cc36a58 * Fix build
- Add r_db to DEPS in Makefiles
2011-09-04 11:49:32 +02:00
pancake
2c92c7d172 * Merge rapatch2 into rabin2 -p
* Honor bits in r_syscall_setup
  - Initial work on RPair in r_syscall
  - Not yet integrated, but design is mostly done
* Add r_str_split()
* Add python2 and python3 makefile rules in r2-bindings
2011-09-04 03:56:35 +02:00
Nibble
fd49310812 * Merge 2011-09-04 02:45:29 +02:00
Nibble
d7afa73011 * Minor refactoring of rabin2 main() 2011-09-04 02:44:53 +02:00
pancake
56fb04bb79 * Say different error if -w is used in r2 and fails
* p= command is now an alias for !rahash2 -a entropy -b 512 $FILE
* Some work in the 'G' key in visual
* Fix zoom on io.va=1
* r_sys_getcwd now returns a heap ptr and its named to r_sys_getdir()
* Show invalid instructions in 'pd'
* Fix prompt for 'w' key in visual
* More work with RPair
  - Looks like it's finally usable. Let's use it from r_syscall
  - Update sdb from hg
  - Enhace test program
* Show newlines in 'ps' command
2011-09-04 02:34:54 +02:00
Nibble
334a6bcfb8 * Fix list and select archs in rabin2 (flags -A and -a)
* Fix memory leak in rabin2
* Fix segfault in r_bin_use_arch()
2011-09-04 02:19:43 +02:00
Nibble
8ec73271c7 * Filter section names in rabin2 output 2011-09-02 13:55:59 +02:00
pancake
12af78ccee * Fix build, reduce warnings and add some checks 2011-08-30 19:12:49 +02:00
pancake
763289b4aa * Fix Bx1d issue in rax2
- Applied patch by flux. Thanks!
2011-08-29 00:43:20 +02:00
pancake
f6d5e9034a * Add r_core_prompt_loop()
* Add support for descriptions in configuration variables
  - Add e+ to list all descriptions
* sync vapis
* Fix zero end string in r_print_hexpair
2011-08-27 04:32:27 +02:00
pancake
2f84cbe1c4 * Fix valabind bindings
* Fix Go bindings build for arm, 386 and amd64
* Apply ricky's patch honoring LIBDIR
2011-08-21 14:24:58 +02:00
pancake
f5228044f1 * exit 1 if egg assemble or compilation fails
* Simplify x86nz assembler jumps
  - Fix 'test reg, reg'
* Minor simplification of entropy.c
2011-08-14 14:11:15 +02:00
pancake
a050b58797 * Show progress bar in entropy calculation output of rahash2
- Allow per-block hash calculation instead of only full file
2011-08-13 18:09:39 +02:00
pancake
de5f4061ee * Add support for jl, jle, jg, jge, jne, je in x86.nz
- support for signed/unsigned values in r_egg
2011-08-13 17:23:24 +02:00
pancake
1424bf9701 * Initial support for 'jb' opcode in x86.nz
- hello.r now is broken because of this use
  - Ignore prefixed '$' in numeric values for r_egg
* Apply @capi_x's patch fixing a bug in 'wb' and rsc/msdn
2011-08-11 17:41:24 +02:00
pancake
c53a78bd88 * Add ragg2 -F (-f native)
- Uses pe on w32, mach0 on osx and elf everywhere
* Apply msdn rsc2 script fixes from capi_x
* Remove comments from ragg2/t/hello.r
2011-08-10 15:42:54 +02:00
pancake
b3cefac08b * Make while() and .var0-= statements work in r_egg lang
- Added support for 'add|sub [reg+delta],n' opcodes in x86.nz
* Add emit_init() function pointer to fix entrypoint issues
  - ebp has no valid value defined on entrypoints
2011-08-10 11:24:15 +02:00
pancake
168d38fc44 * Add rax2 -x to calculate string hash
* Use trim to avoid noisy chars in symbol names for egg/lang
* Properly handle osx/w32 os strings in r_egg
* Make string construction works in r_egg
* Initial work on while() constructs
2011-08-09 11:06:50 +02:00
pancake
06e98dadb1 * Add -k flag to ragg2 - select kernel
- ATM only support for linux and osx
  - Do not show asm when -f is passed
  - Added 3 test programs for osx/linux in ragg2
* Add support for 'lea' opcode in x86.nz
  - Support more 'mov [off], reg' opcodes
  - Lot of new test cases in test.nz
* Fix some segfaults and parsing bugs in egg/lang

--HG--
rename : binr/ragg2/exithello.r => binr/ragg2/t/exithello.r
2011-08-09 02:03:12 +02:00
pancake
1f48797bfb * Fix test reg, reg; mov reg, [reg] ; mov reg, [reg+off] in x86.nz
* First hello world working with ragg2 on linux-x86-32
  - Named exithello.r .. run cd binr/ragg2 ; make test
2011-08-09 00:10:12 +02:00
pancake
1733e6d8a9 * Use r_bin from ragg2 to create ELF/PE/MACH0 bins 2011-08-08 15:00:42 +02:00
pancake
429a475ac0 * Deprecate rarc2 and rarc2-tool
- Replaced by ragg2 - the new r_egg based tool for r2
* Add r_egg_assemble as a 2nd step for compilation
* Fix memory leak in r_egg_free
* Add support for 'cmp' and more 'test' variants for x86.nz
  - Ignore 'dword ptr' string
  - More test cases
* Fix SCSIZE issue in rasc2 -s

--HG--
rename : binr/rarc2/Makefile => binr/old.rarc2/Makefile
rename : binr/rarc2/README => binr/old.rarc2/README
rename : binr/rarc2/config.def.h => binr/old.rarc2/config.def.h
rename : binr/rarc2/config.h => binr/old.rarc2/config.h
rename : binr/rarc2/emit_arm.c => binr/old.rarc2/emit_arm.c
rename : binr/rarc2/emit_x64.c => binr/old.rarc2/emit_x64.c
rename : binr/rarc2/emit_x86.c => binr/old.rarc2/emit_x86.c
rename : binr/rarc2/i/libc.r => binr/old.rarc2/i/libc.r
rename : binr/rarc2/i/socket.r => binr/old.rarc2/i/socket.r
rename : binr/rarc2/osxtest.r => binr/old.rarc2/osxtest.r
rename : binr/rarc2/out.c => binr/old.rarc2/out.c
rename : binr/rarc2/rarc2-tool => binr/old.rarc2/rarc2-tool
rename : binr/rarc2/rarc2.c => binr/old.rarc2/rarc2.c
rename : binr/rarc2/rarc2.h => binr/old.rarc2/rarc2.h
rename : binr/rarc2/t/Makefile => binr/old.rarc2/t/Makefile
rename : binr/rarc2/t/argv.r => binr/old.rarc2/t/argv.r
rename : binr/rarc2/t/bytedump.r => binr/old.rarc2/t/bytedump.r
rename : binr/rarc2/t/data.r => binr/old.rarc2/t/data.r
rename : binr/rarc2/t/dump.r => binr/old.rarc2/t/dump.r
rename : binr/rarc2/t/hello.r => binr/old.rarc2/t/hello.r
rename : binr/rarc2/t/hi.r => binr/old.rarc2/t/hi.r
rename : binr/rarc2/t/if.r => binr/old.rarc2/t/if.r
rename : binr/rarc2/t/inline.r => binr/old.rarc2/t/inline.r
rename : binr/rarc2/t/input.r => binr/old.rarc2/t/input.r
rename : binr/rarc2/t/loop.r => binr/old.rarc2/t/loop.r
rename : binr/rarc2/t/ptr.r => binr/old.rarc2/t/ptr.r
rename : binr/rarc2/t/rawsys.r => binr/old.rarc2/t/rawsys.r
rename : binr/rarc2/t/rawsys64.r => binr/old.rarc2/t/rawsys64.r
rename : binr/rarc2/t/regs.r => binr/old.rarc2/t/regs.r
rename : binr/rarc2/t/ret.r => binr/old.rarc2/t/ret.r
rename : binr/rarc2/t/room.r => binr/old.rarc2/t/room.r
rename : binr/rarc2/t/segfault.r => binr/old.rarc2/t/segfault.r
rename : binr/rarc2/t/shell.r => binr/old.rarc2/t/shell.r
rename : binr/rarc2/t/sub.r => binr/old.rarc2/t/sub.r
rename : binr/rarc2/t/syscall.r => binr/old.rarc2/t/syscall.r
rename : binr/rarc2/test.r => binr/old.rarc2/test.r
rename : libr/egg/t/syscall.r => binr/ragg2/syscall.r
2011-08-08 02:07:26 +02:00
pancake
d99fbd7680 * Fix make mrproper
* Initialize {code,data}_offset to 0
2011-08-08 00:54:00 +02:00
pancake
e812ab57f1 * Add capi's shellcode for x86-64 OSX (tested on Lion)
- fork+wait+execve(/bin/sh)
2011-08-07 01:47:17 +02:00
pancake
839f71e937 * Initial import of the asm.x86.nz plugin
- Very few instructions can be assembled
  - Aims to assemble code with no zeros
* Added xorencoder.asm test file
2011-08-05 00:34:45 +02:00
pancake
63917198b6 * Check empty optind arg to -d 2011-08-04 12:22:24 +02:00
pancake
aad2e91d96 * Initial import of asm.x86.as plugin
- Uses OSX/GNU/BSD 'as' assembler
2011-08-03 21:01:56 +02:00
pancake
860e608d23 * Fix build.. :( 2011-07-27 17:41:35 +02:00
pancake
dc93b16f7b * Minor work on egg and rasc 2011-07-27 10:30:23 +02:00
pancake
deced01103 * Fix build of rasc2 2011-07-27 01:41:35 +02:00
pancake
26a070f5aa * Initial import of r_egg api
- Implements rarc2 as a library
  - Supports x86-32/64 and arm
  - WIP inline-egg like api
* Add radiff2 -x to dump two column output
2011-07-27 01:16:18 +02:00
pancake
259d14940e * Implement R_SEARCH_DELTAKEY
- Accessible with /d search command
* Code cleanup in TinyPE
* Implement rasc2 -o
2011-07-26 09:34:10 +02:00
pancake
041751e029 * Added osxtest.r and adapt rarc2-tool to support rasm2 and rabin2 -c
- rarc2-tool can now create tiny executables!
* Fix segmentation fault in bad use of r_bin_create api
2011-07-26 00:30:45 +02:00
pancake
a6b94842f3 * Add universal rop shellcode for osx-x86-64 in rasc2
- https://github.com/pakt/exp-dev/tree/master/osx.dyld.rop
2011-07-25 23:54:37 +02:00
pancake
d2cf5e4425 * Import chmod() from sbase as r_file_chmod()
- Support recursive chmod
  - Handles string-based octal/expression formats
  - Used by rabin2 -c to chmod +x the created binary
2011-07-25 23:42:39 +02:00
pancake
8d06dd2f02 * Initial implementation of rabin2 -c
- Allow to create tiny binaries with r_bin
  - ATM only MACH0 format for x86-32 is supported
  $ ./rabin2 -a x86_32 -c mach0:31c040682a00000081ec04000000cd80 a.out
* Rename r_bin_set_arch{idx} to r_bin_select{idx}
  - New API r_bin_create and r_bin_use_arch()
2011-07-25 21:10:25 +02:00
pancake
fde9168bd4 * Remove linking dependencies in radiff2 as reported by Debian
* Use -v instead of -V in rasm2 too
2011-07-25 12:22:55 +02:00
pancake
553ac83d91 * Added __KFBSD__ define and enable new proc/maps for GNU/kFreeBSD
* Do not install rsc2 stuff
2011-07-20 19:26:07 +02:00
pancake
ad30b95b45 * Honor --libdir --includedir and --bindir
* Put rsc2 scripts in ${LIBDIR}/radare2/bin
* Force RELEASE=1 in r2-bindings. Oops
2011-07-19 11:25:11 +02:00
pancake
28e5244064 * rax2 -s (without arg) uses stdin now
* Show help when no file given to rabin2 -O help
* Fix ELF strtab section read issue (workaround?)
2011-07-18 00:07:45 +02:00
pancake
df2ec8e014 * Added support for new platform Maemo6-Harmattan
- Linux/arm with debugger support
  - Debian package generation tools (no need for dpkg)
  - Compilation instructions at doc/maemo
* Fix install in binr and libr
2011-07-15 01:50:42 +02:00
pancake
07b5b473c5 * Use OpenSSL (cflags/ldflags) from pkg-config 2011-07-13 19:22:38 +02:00
earada
008dc76721 * Use native api to calculate md5/sha1 hashes
- Fix bug 29
2011-07-13 17:41:26 +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
d07c67e87a * Fix build on mingw32 2011-07-06 21:57:12 +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
e1d569fbeb * use r_num_get in r_cons_grep
- Flags are now handled
* Added 'S.' command to show begin end and name of current section
* Implement 'sn' to seek to next opcode (alias for s+$l)
  - Added $l variable
* Rename r2 flag -v to -q
  -V flag is now -v (all flags in lowercase
2011-06-26 23:49:11 +02:00
pancake
814d220ac6 * Implement 'Cl' command to set sourceline comments
* Fix, implement and install rsc2
  - Added rsc2 srcline script
2011-05-25 15:43:54 +02:00
pancake
c72cbe9bfa * Add rafind2 -e to search for regular expression keywords 2011-06-22 00:28:03 +02:00
pancake
adcefe78fe * Added 'mad' compiler support to crosscompile to maemo6 with QtCreator
- ./configure --with-compiler=mad --with-ostype=gnulinux
* Fix various warnings reported by maemo toolchain
2011-06-14 01:44:28 +02:00
pancake
c1a7557959 * Handle environment variables in rarun2
* Added support for F12 key in r_cons
* Added key.f# eval vars to configure function keys in visual
2011-06-06 00:16:11 +02:00
pancake
fb0119c9b5 * Fix build. Use r_name_filter in rabin2 2011-06-05 23:30:19 +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
8fe475a50f * Added rarun2 program 2011-06-05 01:33:28 +02:00
pancake
c9faf9f88b * Do not load strings if project is already loaded
- Added bin.strings eval key
* Fix range check for anal/meta
* Do not exit(1) when write error on console
* Added 'ad' command to analyze data
  - Find trampolines from data to text f.ex
  - Supports 32 and 64 bit archs
* flags/name moved to util/name

--HG--
rename : libr/flags/name.c => libr/util/name.c
2011-06-04 05:27:26 +02:00
pancake
bf95651e69 * Fix DEX parsing segfault
* Fix possible segfault on newer glibc
* Fix some indentations and Visual hints
2011-05-24 15:25:52 +02:00
earada
839bd60882 * Add mfs and mfo to search by name and offset
* Fix rafind2 build
2011-05-22 00:23:39 +02:00
pancake
acb7709bff * Fix OpenBSD python bindings
- Use -L$(pkg-config --prefix)/lib
  - Use -pthread when linking
* Many fixes in vapi bindings
  - Thanks eddyb!
2011-05-18 16:42:12 +02:00
pancake
7e917da3db * Use $(shell) instead of ``
- Compile time should be a little faster now
* Fix warning in lang_perl
2011-05-15 04:31:08 +02:00
pancake
6277d904d9 * Initial import of r_sys_crash_handler ()
- Launch 'gdb --pid %d' when crashing
  - Enabled when R_DEBUG is set
* List environment variables in help message
2011-05-15 04:20:59 +02:00
pancake
db61c1640a * Implement simple ciphering algorithm to bundle rasc2 shellcodes
- Should trick some silly antiviruses to stop claiming that
    the w32 build is malware
* Unify the python-config-wrapper scripts

--HG--
rename : binr/rasc2/shellcodes.c => binr/rasc2/shellcodes.c.src
2011-05-15 03:33:31 +02:00
pancake
80492f5620 * Fix help message in radiff2 2011-05-13 12:14:00 +02:00
pancake
425fe596f4 * Fix many warning messages
* Initial implementation of r_debug_rap
* Implement 'dcu from to' (ranged stop point)
* Use RList in r_lib (list.h has been deprecated)
2011-05-13 10:22:28 +02:00
pancake
a3050fce7b * Implement r_fs_view() method to set visibility options for filesystems
- Added enum for VIEW_{DELETED|SPECIAL} ...
  - Implement support for listing deleted files for FAT.
  - Experimental state
* Add 'fs.view' eval variable
  - values normal, all, deleted and special
  - only 3 letters are checked 'del' and 'spe' are ok
* Add missing include files
2011-05-13 02:31:18 +02:00
pancake
c2d5f9215b * Move R_SYS_DIR and R_SYS_HOME into r_types.h
* Parse space separated words in rax2
* Added r_str_binstr2bin() helper function in r_util/str
  - Converts binary string to raw bytes
  - rax2 -b is the commandline frontend for this
2011-05-13 00:25:36 +02:00
pancake
09577a9246 * Initial import of the r_bin_fs plugin
- Autodetects underlying filesystem
  - Auomatically mounts a /root partition
  - Only support for 'HFS+' filesystem (as a test)
* Added 'oo' command to reopen current file
  - In debugger mode re-forks the process
2011-05-12 09:52:40 +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
ac786a03dd * Add OSX x64 Reverse TCP Shellcode
* Fix rasc2 enviroment vars
* Change some files license from GPL3 to LGPL
* Fix some typos
2011-05-03 23:43:16 +02:00
pancake
28de8a232f * Fix build of rapatch 2011-04-28 09:50:38 +02:00
pancake
fad6bc0886 * Commited 'rapatch' from lacon-2010 talk 2011-04-28 01:19:38 +02:00
pancake
e90ea1b3f1 * Fixes in vapis (RCore.file and RBin.get_libs())
* Fix buffer overflow vuln in rasc2 (thanks @earada)
2011-04-25 00:03:43 +02:00
pancake
616395cca3 * Fix help in radiff2 2011-04-18 22:46:21 +02:00
pancake
8069e1f509 * Fix cmdline arguments parsing segfault in radiff2
* Do not build r_big api
  - It's incomplete, not used and is problematic to build
2011-04-17 03:54:27 +02:00
pancake
6b1001aefc * Implement -g and -C flags to radiff2
- Add support for function/basicblock code diffing
  - Import nibble's test-ragdiff2.py in swig/python
  - Added some documentation in doc/bindiff
2011-04-15 18:59:44 +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
3b490556f5 * Do not export drx_get and drg_set
* Do not build/use r_th
2011-04-04 14:39:42 +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
daff6aff5d * Fix set_reg_profile callback in r_anal_arm
* Fix dupness issue between RDebug and RAnal sharing RReg
  - Move reg_profile string into inner RReg
* Remove vm.arch setup in rasm2 -ri
2011-03-24 00:54:09 +01:00
capi
44fa1dc253 * Add manc and msdn query scripts to rsc2 2011-03-18 14:07:52 +01:00
Nibble
2db84a2e46 * Fix build when compiling in a clean system (thx @esanfelix!) 2011-03-07 20:50:10 +01:00
Nibble
1535b4c5c1 * Don't flag imports/symbols twice (also for functions)
* Remove unnecessary calls to r_flag_space_set()
* Show calls nicer in decode mode
2011-02-28 17:27:08 +01:00
pancake
d953cd9adf * Initial implementation of the java name mangling
- Added as comments before the method names
* Some fixes in r_bin_java
* Added r_buf(append/prepend)
* Show flags always in new lines
2011-02-27 20:30:41 +01:00
pancake
e557d9a385 * Drop 'r_cons.h' from r_fs
* Fix visual glitch in Vej and Vt
* Handle demangled names as comments
  - in rabin2 and core->bin_load
  - Needs to be a RAnalCall at some point
  - bin_java calls the dummy r_bin_demangle_java
  - Add R_BIN_NM_ANY enum
* Add asm.lbytes config to align disasm bytes to left
* Fix visual glitch in function boundaries
* Import upgraded versions of the idc2rdb scripts in doc/
2011-02-25 04:19:30 +01:00
Nibble
ddffdff8d2 * Rename r_asm_aop_* to r_asm_op_*
* Rename remaining r_anal_aop_*
2011-02-24 16:50:29 +01:00
Nibble
332524e120 * Rename r_anal_aop_* to r_anal_op_*
--HG--
rename : libr/anal/aop.c => libr/anal/op.c
2011-02-24 14:06:49 +01:00
Nibble
f3c32e3c17 * Remove references to r_vm
* Don't build r_vm
* Deprecate cmd 'av'
2011-02-23 17:27:59 +01:00
pancake
d471bd6da2 * Handle entropy hash type from rahash2 2011-02-16 14:18:31 +01:00
Nibble
ec340164c3 * rax2
- Fix another bug in format_output()
  - Remove unnecessary malloc+free
2011-02-15 23:51:05 +01:00
Nibble
4158466b28 * Fix bug in rax2 related to bin conversion (thx Jan Lieven!) 2011-02-15 18:38:18 +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
Nibble
ec68959bd2 * Clean up ranal2 output
- Avoid ugly 0xffff...
2011-02-08 14:07:51 +01:00
Nibble
a906dc18a3 * Fix typo in ranal2 2011-02-08 13:59:50 +01:00
Nibble
ead4e9502f * Simplify type assignment in r_anal
* Include fcn type in 'rabin2 -r' output
2011-02-08 00:15:12 +01:00
pancake
64c4e5c014 * Fix various bugs in r_lang api
- Use RList instead of kernel's list.h
* Initial import of 'vala' plugin
  - Allows to write Vala/Genie scripts
2011-02-06 14:10:16 +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
Nibble
7de9646195 * Merge 2011-02-04 14:07:56 +01:00
Nibble
1d83a7ba25 * Some optimizations in r_anal
- bb's are included in fcn struct
  - analyze bb's and fcn's all together
* Update some vapis
* Fix build
2011-02-04 14:03:59 +01:00
pancake
8924841072 * Some more work on r_core_sysenv*
- fix api, but still not using BLOCK or so
* Fix help for ??? and !?
* Upgrade swig/configure.acr to 0.6.9
2011-02-04 11:30:08 +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
9cd07bd9d2 * Added r_cons_resize() and _interrupt() RConsEvent callbacks
- Use _resize() from visual mode, so redrawing is now cleaner
* Minor bug fixes
2011-01-23 13:12:16 +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
earada
2fd808e19b * Fix rafind2 build
* jk visual commands seeks an opcode size
2011-01-21 10:21:04 +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
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
Nibble
2e26e35584 * Add bb list into RAnalFcn structure
* Analyze bbs per function
* Remove gdiff from radiff2 temporary (deprecate?)
  - Meanwhile ragdiff2 should be used
* Update TODO
2010-12-24 13:27:20 +01:00
Nibble
28d0a62430 * Change gdiff API so it takes 2 core's as args
* Don't output diff info and vars in 'afl' for loc's
* More refactoring of gdiff
2010-12-06 03:34:44 +01:00
Nibble
c254af504f * More optimizations in gdiff
* Fix the usage message of radiff2
2010-12-04 15:24:39 +01:00
Nibble
eb88fa40fc * Set variable direction during function analysis
* Add argument "dir" to r_anal_var_add()
* Fix reg handling in x86im plugin
* Fix variable analysis in r_anal
* Use plugin "x86" in ranal2 by default
2010-11-29 20:06:11 +01:00
Nibble
f0d2279a0e * Little refactoring of rax2 2010-11-29 13:20:44 +01:00
pancake
61cf8cd3aa * Remove unused libr.pc.acr
* Set procmod group in osx make target of r2 bin
2010-11-29 10:27:11 +01:00
pancake
58fc61d486 * Fix overflow (Thanks Adriana for the patch!) 2010-11-29 01:29:21 +01:00
pancake
623d91e678 * Apply Adriana patch with some new shellcodes for rasc2 2010-11-29 01:28:17 +01:00
pancake
cb077db5f2 * Add codesign makefile target for OSX 10.6 2010-11-26 13:11:11 +01:00
pancake
6507ea67b8 * Apply patch from @astralia
- Adds -S and -s flags to rax2
2010-11-25 01:27:27 +01:00
pancake
fdaac4c171 * Implement dbg.bep in r2
* Sync r_bin vapi with changes in r_bin.h
2010-11-18 22:57:28 +01:00
pancake
421208a0c7 * Replace main for binsym in r_bin
* Added dummy commands for r_debug_fork/clone
2010-11-18 11:41:17 +01:00
pancake
6d515cc1a8 * Update and reorder TODO tasks
* Added r_file_mmap() functions in r_util
* Do not hash files bigger than 10MB
* Fix abspath() return value and signature
2010-11-17 21:15:34 +01:00
pancake
0aafe05b45 * Step now accepts pid+tid
* Fix attach in w32 debugger
  - use dpa and get first thread by default
* Mark with asterisks the selected pid/thread (dp/dpt)
* Fix reg_write in w32
2010-11-17 02:31:56 +01:00
Nibble
8df7b217eb * List IO plugins with r2 -L 2010-11-17 01:29:33 +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
Nibble
f0fe6ae4fa * Fix binr build 2010-11-16 19:43:26 +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/n900
9580907a35 * Fix static and nonpic build with no gmp
* Needs to rerun configur-plugins
2010-11-10 10:45:47 +01:00
pancake
aacce16095 * Another fix for nonpic build 2010-11-10 04:00:49 +01:00
pancake
a6629c610c * Fix static compilation on Linux systems
- Not really portable, needs some work to fix w32 build
2010-11-10 03:55:27 +01:00
pancake
3a44d471f4 * Fixes for pkgconfig and vapi deps
* Apply patch from @astralia for rax2
  - support int->bin and bin->int
2010-11-04 13:19:36 +01:00
pancake
23e6bfb679 * Add manpages for rarc2 rarc2-tool ranal2
* Use the library symlinking layout as reported by Debian
2010-10-27 22:17:55 +02:00
Nibble
a3ff1f5261 * Fix initial seek in debug mode to pc (use sr pc)
* Complete 's' help
* Fix dietline echo in 'r2 -v' mode
  - Add cb for scr.prompt
2010-10-27 17:45:53 +02:00
Nibble
c79afe3568 * Add var vm.arch
* Fix vm arch setup at startup
* Fix flag set in visual mode when cursor is enabled
* Filter string names before adding flags in r_bin_load
* Fix r_flag_name_filter (do trim)
* Fix r_sys_rmkdir
* Update TODO
2010-10-23 14:27:13 +02:00
pancake
431e626680 * Fix $$$ variable
* Do not set io.va twice
2010-10-22 01:16:32 +02:00
pancake
7592a5e2ba * Fix build of rarc2 on w32 2010-10-19 13:57:00 +02:00
pancake
f9e6ca28cf * Fixes in swig/ for OS type selection
* Move rsc2 into binr/

--HG--
rename : rsc2/rsc2.c => binr/rsc2/rsc2.c
rename : rsc2/scripts/intel2att => binr/rsc2/scripts/intel2att
2010-10-18 20:47:13 +02:00
Nibble
bfbd12ed3c * Don't add symbols as functions before analyze them
* Update and simplify gdiff
2010-10-13 18:51:10 +02:00
Nibble
11e8d6a1da * Fix va issue in dbg mode 2010-10-13 01:23:27 +02:00
pancake
01b56da424 * Remove -l flag in rarc2
- Replaced by rarc2 -a
* Fix build
2010-10-13 00:43:02 +02:00
pancake
f1e46a88f6 * Do not run .!rabin2 from r_core
- Use internal APIs to load binary information
  - Startup time reduced about 2-3 times
  - Thanks @earada for this patch!
2010-10-11 17:11:43 +02:00
pancake
f99e946b9b * Initial import of rasc2 (copypasta from r1) 2010-10-04 19:43:40 +02:00
Nibble
836c91c32a * r_util
- Fix r_sys_rmkdir
* rabin2
  - Generate folder structure on extract operations
2010-10-04 13:57:48 +02:00
pancake
e8f8e72896 * Added r_bin_get_object() to cache binary information
* Initial work in r_core_bin_load()
  - Integrating rabin2 inside core
2010-10-04 10:55:43 +02:00
Nibble
a1d0887ca8 * Fix build (update core/anal.c with the last changes in r_bin)
* Implement extract in rabin2
2010-10-04 04:01:25 +02:00
Nibble
cec1f3fa73 * r_bin
- Refactor r_bin to work better with big fatbins
  - Don't load all sub-bins in memory
    Only load the fatbin and the selected sub-bin
  - Add r_bin_set_archidx() and r_bin_list_archs()
  - Update t/{rpathdel.c, test_meta.c}
* rabin2
  - Use '-f str' to select sub-bin by name
2010-10-04 03:46:58 +02:00
pancake
ee39ba239a * Add 'FS' #define for w32 and *nix
* Add support for thumb mode ARM disassembler
  - Workaround a warning in r_vm for arm-16
* More work on drx.c, but still not integrated
2010-10-04 00:42:11 +02:00
Nibble
48dd408e45 * Merge
* Minor fixes in r_bin
2010-10-01 11:58:11 +02:00
pancake
8081f02601 * Fix uninitialized variable in rabin2
* Fix null pointer handling in rbin when no xtr plugin found
* Initial draft code for the x86 debug registers implementation
* Fix avr* command
2010-10-01 11:10:59 +02:00
Nibble
41bd2fd0ea * rabin2
- Show filesize in '-x' output
  - Select "sub-bin" using '-a arch_bits' and '-n filename'
* r_bin
  - Add argument "name" to r_bin_set_arch
2010-10-01 10:09:50 +02:00
Nibble
4b558bec3b * rabin2 -x uses filename.arch_bits as output file
* store full path in dyld cache filenames
2010-10-01 08:12:43 +02:00
Nibble
987d8599f9 * Initial implementation of the RBin extractor for dyld cache
* Add bin_xtr_dyldcache to plugins.def.cfg
* Show bin name in the output of 'rabin2 -A'
* Minor fix in rabin_list_archs() in rabin2
2010-10-01 04:26:52 +02:00
Nibble
eb811bbf08 * r_core
- Deprecate ah and add anal.plugin
  - e anal.plugin=? list available plugins
  - Add the command 'ar' to handle refs/xrefs
  - Remove old CX and Cx stuff
  - Remove afg (done by af)
* r_anal (& r_meta)
  - Remove refs/xrefs stuff from r_meta
  - Handle refs from r_anal
  - Add r_anal_ref_{add, del}
* rabin2
  - Add 'e anal.plugin' to the output of rabin2 -Ir
2010-09-28 13:58:03 +02:00
pancake
3ef71b106a * Indentation fixes in rax2 as discused in chat
* Fix compilation of vapi/r_bin
* Some mods in test programs for swig/python
2010-09-26 03:18:04 +02:00
Nibble
0a09b20cc0 * rabin2
- Make -A output more verbose
  - Dump all archs with -x when no one is specified using -a
* cleanup TODO
2010-09-25 12:33:30 +02:00
Nibble
333fbbf55b * rabin2
- Set arch with 'rabin2 -a arch_bits filename'
  - Remove flag -B
  - Implement extract (-x)
2010-09-25 03:45:03 +02:00
Nibble
483ab6160b Apply @earada's patch (thx!)
* Improving rax2
  - Support for many bases.
  - Add -s flag for transform byte to bin (ej: "48454c4c4f" to "HELLO")
  - Add -e flag for endian swap.
* New r_num_to_bits converts nums into binary representation.
2010-09-24 21:25:23 +02:00
Nibble
793dae395d * Massive refactoring of r_bin
- Add support for fatbins (currently only fatmach0)
  - Minimize creation of r_buffers
* rabin2
  - Add flag -A for listing archs
  - Add flags -a and -B for selecting arch
  - In the next commit -A and -B will be removed and -a will work
    with the following format:
    [-a arch bits] for selecting arch
	[-a] for listing them

--HG--
rename : libr/bin/p/bin_fatmach0.c => libr/bin/p/bin_xtr_fatmach0.c
2010-09-24 21:23:13 +02:00
pancake
124786c1ac * Added 'drd' command to show only modified regs
* Added r_list_foreach_prev()
* Add RSyscallPort to handle Hardware I/O ports
* Remove libr/TODO and refactor /TODO
* Link with 'ld' in rarc2-tool for nasm
2010-09-24 16:45:56 +02:00
pancake
54677585c2 * Added support for 'nasm' in rarc2 (-n) 2010-09-24 06:10:20 +02:00
pancake
90a2b9f84a * Initial support for multiple arguments in rarc2 for ARM
- Some more fixes in the ARM emitter backend
  - Single quoted strings are now supported, not filtered
  - Fix math opcode names for ARM
  - Added support for /**/ and // comments
* Fix makefile for test programs in rarc2/t
  - Added simple hello world for tests in rarc2/t
2010-09-16 20:44:22 +02:00
pancake
6072a14eef * Simplify and fix rarc2-tool script
* Add support for /**/ style comments in rarc2
* Fix libr2.a warning message
* Fix .string "" directive in rasm2
  - Now works like in GAS. escape chars are handled
  - and quotes are stripped
2010-09-15 13:10:10 +02:00
pancake
9b2d428d1b * Initial hello world for rarc2 in ARM with GAS working
- Few changes needed to work with rasm
* Cleanup some warnings
* Handle foo() as a function definition, so emit frame in rarc
2010-09-15 10:50:43 +02:00
pancake
1b1599c6df * Support for some push/pop arm opcodes with 2 regs
* More fixes for rarc2 on ARM
* Implement .fill directive in r_asm
* Added asm.profile in r_core
* Added r_str_bits as a helper to display register flags
2010-09-14 11:22:31 +02:00
pancake
a9f8d52e59 * Many fixes in ARM assembler and rarc2 support for ARM
- Still not yet usable, but
* Add .byte and .hex in r_asm as directives
* Add test case for r_word api
  - Fix r_word_count()
* Also handle .globl (and .global) to keep GAS compatibility
  - TODO: add .word .fill .align and others
2010-09-14 01:29:09 +02:00
Nibble
5733497a0b * Add bindings for go
* Add swig/go/test-r_bin.go for testing r_bin from go
* Fix build for r_bp and r_search bindings
* Rename enum VarType to VarClass in r_anal.vapi to avoid conflicts
* Add flag -R to rabin_cmd in r2 start up
2010-09-12 12:31:18 +02:00
pancake
f4ada2309f * Handle numeric values as radix=10 by default in ollyasm
- Fixes rarc ATT output format for x86
* Fix commandline flags parsing in rarc2
  - Honor intel syntax with ".intel_syntax noprefix" header
    - GAS can now compile att and intel syntax rarc2 output
* Handle .intel_syntax and .att_syntax directives in rasm2
2010-09-10 13:17:24 +02:00
Nibble
5567da9538 * Add support for parsing relocs to r_bin
* Add flag -R to rabin2 to list relocs
* Implement reloc resolution in r_bin_elf for 32 & 64 bits
2010-09-10 11:11:38 +02:00
pancake
2d2131607c * Error on invalid hexpair strings in rasm2
* Fix assemble of str/ldr opcodes in ARM assembler
  - add more opcodes: nop, push, pop
2010-09-10 10:50:53 +02:00
pancake
a7e77e78ee * More work on the arm assembler 2010-09-09 01:39:15 +02:00
pancake
183dffcd6b * Fix push immediate opcode analysis in basic x86 analysis
* Import simple arm assembler
* Some fixes for the brainfuck disassembler plugin
2010-09-08 19:49:34 +02:00
Nibble
3455c738df * Fix -e in rasm2 2010-09-08 12:35:38 +02:00
pancake
62935fe017 * Missing build dependency 2010-09-06 16:14:37 +02:00
Nibble
f7693a14d2 * Huge refactoring of anal_x86_x86im
* Add comments in anal_x86_x86im explaining how x86im parse the opcodes
* Implement analysis for more opcodes
* Rename R_ANAL_OP_TYPE_RCALL into R_ANAL_OP_TYPE_UCALL (more generic)
* Update anal_mips.c and r_anal.vapi
* Update TODO
2010-09-05 21:20:56 +02:00
Nibble
98a09ecd52 * ranal2
- Add stackop2str() and optype2str()
  - Output op type
* r_anal
  - Fix fcn analysis
  - Remove test_anal.sh
2010-08-25 02:27:42 +02:00
Nibble
aed141180e * ranal2
- Move t/test_anal to binr/ranal2
  - Add support for static/dynamic plugins
  - Add flag '-B' for binary input
  - Add support for ascci hexpairs
  - Now input can be given through argv or stdin
  - Output analyzed bytes
* r_asm & r_anal
  - Improve output of r_*_list

--HG--
rename : libr/anal/t/test_anal.c => binr/ranal2/ranal2.c
2010-08-24 22:16:03 +02:00
pancake
895d947f49 * Fix build 2010-08-23 12:50:19 +02:00
pancake
3abfbe418d * Swap file-offset order in visual prompt
* Fix build
2010-08-23 12:39:00 +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
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
pancake
b6cc9ca1ba * Merge r_meta inside r_anal
* Display filename in title line of Visual mode

--HG--
rename : libr/meta/README => libr/anal/README.meta
rename : libr/meta/meta.c => libr/anal/meta.c
rename : libr/meta/t/test.c => libr/anal/t/test_meta.c
rename : libr/meta/type.c => libr/anal/type.c
2010-08-20 00:36:22 +02:00
Nibble
283c2efef9 * rabin2
- Add flag -n to filter by {symbol, import, section} name
* r_core
  - dmi accepts argument symname
  - more work on cmd parsing
2010-08-17 13:15:18 +02:00
pancake
3287f8d64d * Filter string to avoid escaped commands execution (r_str_unscape)
* More chars filtered in rabin2 -z (flag ..)
* Parse PLT in order to find matching ordinal in rgot.vala
2010-08-16 14:58:10 +02:00
Nibble
6727897e73 * rabin2
- Add flag -b to set a custom baddr
* r_core
  - Add command 'dmi' to flag the symbols of a given lib in memory
2010-08-16 14:35:15 +02:00
Nibble
28ef002c21 * Fill field 'ordinal' in elf symbols 2010-08-16 01:14:54 +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
Nibble
a7750b3204 * r_anal
- Add field at to RAnalRef
  - Set ref->at to the addrees of the opcode which does the
    jump/call
  - Set correctly the xrefs "from" address
* r_core
  - Modify afl to accept an optional argument [fcn name] to
    filter output by function
  - Change afl output to group xrefs by type (code and data)
2010-08-02 12:42:59 +02:00
Nibble
d094f42d2f * r_bin
- Fill RBinImport->size within bin plugins
  - Add field size to RBinImport
* r_bin_elf
  - Correct value of r_bin_elf_symbol_t->size for imports
* rabin2
  - Output af+ command in radare mode
* Update TODO
2010-08-01 11:02:55 +02:00
Nibble
62e24bd0c6 * r_bin_fatmach0
- Huge refactoring of r_bin_fatmach0
* rabin2
  - Don't print msg "n bins extracted" in radare mode
2010-07-29 18:15:02 +02:00
Nibble
bb8cfd866d * r_bin
- Add function r_bin_extract()
  - Add lib r_bin_fatmach0 into format/mach0/
  - Complete mach0_specs with fat mach-o stuff
  - Add plugin bin_fatmach0
  - Initial import of mach-ex into r_bin
  - Remove mach-ex
* rabin2
  - Add flag -x for extracting bins from file
* Build
  - Update plugins.def.cfg
  - Remove mach-ex stuff from libr/Makefile
2010-07-29 16:04:18 +02:00
Nibble
344bcf16a6 * Fix build 2010-07-23 12:19:39 +02:00
pancake
894202db16 * Fix creation of ~/.radare2/rdb and r2 -p (Thanks edu!)
* Re-run ./configure-plugins if .def.cfg is newer than .cfg
* Documentate build instructions of the TestRBin.java
* Sync TODO and ChangeLog
2010-07-23 01:15:03 +02:00
pancake
2f09509630 * Fail when binr build fails somewhere
* userconf R2_VERSION
* Implement some more # hashing algorithms
2010-07-15 13:34:53 +02:00
Nibble
3131a9a7cf * Speed up make mrproper 2010-07-13 11:59:55 +02:00
pancake
5f10d6ba64 * r2 -n does not load rabin2 information
* Implemented search.align
  - Affects RPrint->addrmod and RSearch->align
* Use r_search_reset() instead of r_search_new()
* typedef RConfigCallback
* r_sys_bt renamed to r_sys_backtrace
2010-06-30 02:30:07 +02:00
pancake
3c7610bd9f * Some enhacements for rarc2.
- Add -s flag to use att syntax instead of intel one
  - Flag -A is the new -a (show selected arch)
  - Some more work on the arm code generation backend
  - Simplify some code (-58LOC)
  - Finish manpage rarc2(1)
2010-06-29 16:50:15 +02:00
pancake
affbba8aa2 * Rename r2rc to rarc2
- Moved into binr/rarc2
  - Integrated with symstall
  - rarc2-tool now support -xc and -cx combo
  - Add rarc2.1 manpage
* Add some bugs to review in TODO

--HG--
rename : r2rc/Makefile => binr/rarc2/Makefile
rename : r2rc/README => binr/rarc2/README
rename : r2rc/TODO => binr/rarc2/TODO
rename : r2rc/emit_arm.c => binr/rarc2/emit_arm.c
rename : r2rc/emit_x64.c => binr/rarc2/emit_x64.c
rename : r2rc/emit_x86.c => binr/rarc2/emit_x86.c
rename : r2rc/i/libc.r => binr/rarc2/i/libc.r
rename : r2rc/i/socket.r => binr/rarc2/i/socket.r
rename : r2rc/out.c => binr/rarc2/out.c
rename : r2rc/r2rc-tool => binr/rarc2/rarc2-tool
rename : r2rc/r2rc.c => binr/rarc2/rarc2.c
rename : r2rc/rcc.h => binr/rarc2/rarc2.h
rename : r2rc/t/Makefile => binr/rarc2/t/Makefile
rename : r2rc/t/argv.r => binr/rarc2/t/argv.r
rename : r2rc/t/bytedump.r => binr/rarc2/t/bytedump.r
rename : r2rc/t/data.r => binr/rarc2/t/data.r
rename : r2rc/t/dump.r => binr/rarc2/t/dump.r
rename : r2rc/t/hello.r => binr/rarc2/t/hello.r
rename : r2rc/t/if.r => binr/rarc2/t/if.r
rename : r2rc/t/inline.r => binr/rarc2/t/inline.r
rename : r2rc/t/input.r => binr/rarc2/t/input.r
rename : r2rc/t/loop.r => binr/rarc2/t/loop.r
rename : r2rc/t/ptr.r => binr/rarc2/t/ptr.r
rename : r2rc/t/rawsys.r => binr/rarc2/t/rawsys.r
rename : r2rc/t/rawsys64.r => binr/rarc2/t/rawsys64.r
rename : r2rc/t/regs.r => binr/rarc2/t/regs.r
rename : r2rc/t/ret.r => binr/rarc2/t/ret.r
rename : r2rc/t/room.r => binr/rarc2/t/room.r
rename : r2rc/t/segfault.r => binr/rarc2/t/segfault.r
rename : r2rc/t/shell.r => binr/rarc2/t/shell.r
rename : r2rc/t/sub.r => binr/rarc2/t/sub.r
rename : r2rc/t/syscall.r => binr/rarc2/t/syscall.r
rename : r2rc/test.r => binr/rarc2/test.r
2010-06-28 20:30:20 +02:00
pancake
cb5f4f26da * Fix segfault in osx 2010-06-27 22:15:44 +02:00
pancake
e101e5023d * Fix build on mingw32 2010-06-27 22:14:06 +02:00
pancake
7ff20e59db * Add -t flag to launch rabin2 in a thread
* Fix ^D using threaded load
* Only load rabin info when no project file exists
* r_core_project_open does not works on directories now
* Sync r_core.vapi
2010-06-24 23:14:12 +02:00
pancake
37c3e25664 * RCore now depends on RThread
- Loads rabin2 information in a background thread
  - Prompt is now much more responsive
  - Fix segfault in null pointered var in RThread
* rabin2 load strings only from data sections if found
* Split r_core_prompt/exec (make it cooperative-thread-friendly)
2010-06-23 17:30:16 +02:00
pancake
5748a66278 * Fix segfault in stepover in non-debugger mode
* Check if file exists before launching rabin to avoid noisy messages
* Disable io.va when using the debugger
* io.va is now enabled by default (static-analysis-friendly)
2010-06-22 20:27:14 +02:00
pancake
790491a707 * Added basic guidelines in TODO.decompiler
* r2 now support -s and -b with ut64/ut32 offsets
* Remove 'goto' statement
2010-06-21 21:08:43 +02:00
pancake
ace71e8be4 * Load string flags into r2
- Fix string filtering
* Display string references for ARM (load indirections)
* Fix numeric indexing of branch references in visual mode
* Display '>' char for call instructions
* More work on RMeta
  - unscape strings to avoid \n and \t
  - handle correctly the 'Cs' command
  - Add partial documentation for the rest of 'C' commands
2010-06-21 00:48:06 +02:00
pancake
276f186e7e * Add rafind2.1 manpage
* Many cleanups in the TODO files
2010-06-18 17:52:30 +02:00
Nibble
3eb855f6c4 * r_bin
- Rename characteristics into srwx
  - Fix ref to binmain in the pe64 plugin
* r_bin_pe
  - Rename section.characteristics into section.flags like in
    the other formats
2010-06-17 18:45:27 +02:00
pancake
c528edf318 * Link r_reg when r_anal 2010-06-17 00:04:57 +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
Nibble
19dfb38b23 * r_core
- Fix segfault (pancake)
* Build
  - Remove rpath stuff
  - Simplify Makefiles
  - Add rafind2 to binr/Makefile
  - Add symstall to binr and r2rc
  - Fix minor deinstall issues
2010-06-15 13:10:46 +02:00
Nibble
2d81aabbd5 * Fix the build of radare2 and radiff2
* Remove r_line dep from cons/t/Makefile
* Build r_cons before r_line in libr/Makefile
2010-06-15 01:23:34 +02:00
pancake
16089bb6e9 * Fix build of binr/
- Some missing deps everywhere
* Initial work for RAnalCond
2010-06-15 00:46:18 +02:00
Nibble
68aeb6f92a * Add targets clean & mrproper to binr/Makefile
* Use r_list_free instead of r_list_destroy in r_anal
* Some minor fixups in r_anal
2010-06-14 18:29:52 +02:00
pancake
d27e461811 * Fix linking issues reported by matalaz (Thanks!) 2010-06-06 23:26:11 +02:00
pancake
b7c554b24a * Some linkage fixes for binr/
* Added 'at' command (not yet implemented at all)
  - Some refactoring in r_debug_trace code
  - Remove deprecated r_trace.h
2010-06-04 00:56:44 +02:00
pancake
fdb0cf4229 * Do not warn in r_lib until R_DEBUG env is defined 2010-06-03 10:57:34 +02:00
Nibble
c63963c598 * Fix binr/Makefile (thanks jan! :) 2010-05-31 19:59:31 +02:00
Nibble
fcc6b8d013 * Add flag -M to rabin2 at radare2 startup and cg
* Add r_asm_mdisassemble_hexstr
* Update r_asm.vapi
2010-05-30 13:00:21 +02:00
Nibble
2f43431e80 * r_bin
- Add r_bin_get_main
  - Implement get_main for elf32 & elf64
  - Rename RBinEntry to RBinAddr
* rabin2
  - Add flag -M to output main offset and va
* bindings
  - Update r_bin.vapi
  - Minor fixup in r_util.vapi
2010-05-30 06:06:25 +02:00
pancake
64c329d297 * More work for 'binr'. Hopefully everything is done now :) 2010-05-29 13:24:47 +02:00
pancake
eb05e6a6b2 * Move all the r2 programs into binr/
- Little cleanup of the build system
2010-05-29 03:30:36 +02:00
pancake
49f09cc421 * Initial refactor to build libr bins (binr) out of libr
- Cleaner build/install
2010-05-28 17:15:20 +02:00