18057 Commits

Author SHA1 Message Date
mrmacete
a65bbfd32d Rewrite dyldcache plugin
- still supports only 64-bit caches
- use MACH0_ functions
- parse symbols, sections and classes
- use R_DYLDCACHE_FILTER env variable to symbolicate only a subset of the cache
- rebase unslid caches on-the-fly, properly slide slid caches symbols
2018-05-15 14:01:19 +02:00
mrmacete
7be0af355d Avoid calling RBinPlugin->classes() twice 2018-05-15 14:01:19 +02:00
mrmacete
f6729910ee Tweak mach0_classes parser
- expose `get_class_t`
- put an arbitrary limit on the class name instead of using section size, on files like dyld caches sections can be many hundreds of MB long and can cause a 100x slowdown. objc doesn’t define a max length for class names, but for all practical purposes 256 seems fine
- optionally use an external va2pa conversion function, if provided by the bin obj (again, useful for dyld caches in which references can point to data in different sub-bins)
- avoid calling the bin plugin for finding the __classlist section, instead use bin obj directly
2018-05-15 14:01:19 +02:00
mrmacete
ef03be2675 Fix boundary check on swift demangling
- found by ASAN
2018-05-15 14:01:19 +02:00
mrmacete
d60f9c7684 Tweak mach0 parser
- add a `MACH0_(opts_t)` structure to be passed to the constructors, it holds the `verbose` flag and the `header_at` fields for now, but can be tweaked in future without changing the constructors’ signatures all the time
- add support for loading mach0 files where the header is not at offset 0, that’s the meaning of the `header_at` option, this is needed for parsing dyld cache sub-binaries
- the default `MACH0_(new_buf)` constructor now takes a reference of the given buffer instead of making a copy, so got rid of `MACH0_(new_buf_steal)`
- ported the bin_macho plugin to use the new constructor with options
2018-05-15 14:01:19 +02:00
Khairul Azhar Kasmiran
bae0f69aab
psx escapes newlines (#10089) 2018-05-15 19:33:20 +08:00
pancake
a5477b2de0 Fix some unused function when building without support for pty 2018-05-15 12:11:34 +02:00
pancake
05d092453b Enforce embed-bitcode ldflags in ios-sdk 2018-05-15 11:26:42 +02:00
Vanellope
6107339580 added the browse mode to V! (#10095)
* added the browse mode to V!
* added the missing help messages
2018-05-15 12:38:50 +08:00
Paula
9b6e6a305d Add white logo in SVG format (#10093) 2018-05-14 18:13:52 +02:00
xarkes
721b22de60 Added fortune 2018-05-13 12:31:38 +02:00
Khairul Azhar Kasmiran
ec3861ba7b asm.varxs -> asm.var.access, asm.minvalsub -> asm.var.submin (#10088)
* asm.varxs -> asm.var.access
* asm.minvalsub -> asm.var.submin
2018-05-13 10:32:16 +02:00
Khairul Azhar Kasmiran
94b3ae12a8 asm.varsum -> asm.var.summary, asm.vars -> asm.var (#10083) 2018-05-13 04:03:35 +02:00
Luca Di Bartolomeo
367c24aaba Support every output format for the xrefs graph (agx) (#10084)
* add agx xrefs graph
* Fix various crashes if the interactive graph was custom (aggv)
* Fix scroll wheel after exiting interactive graph
2018-05-13 04:02:50 +02:00
pancake
9faa4f695b Fix crash in ragg2 for x86-64 (and spit 'dword' in mov) 2018-05-13 03:59:37 +02:00
Vanellope
a201b19e43 r_core_visual_panels is way too huge so gradually splitting the function. (#10082) 2018-05-12 17:13:40 +02:00
s1kr10s
b3e726d734 radare2_fix_xss (#10077)
This is reflected when the web service is used.

I have added an input filter for the invalid characters in the names of the files to analyze, using the encodeHtmlEntity() function, applied in the variable x[0].uri
2018-05-12 14:01:42 +02:00
Khairul Azhar Kasmiran
f271f86a38 asm.varsub(_only) 🠢 asm.var.sub(only) (#10080)
* asm.varsub_only 🠢 asm.var.subonly

* asm.varsub 🠢 asm.var.sub
2018-05-12 10:54:54 +02:00
Luca Di Bartolomeo
4364aa3bf0 fixes + refactoring (#10078) 2018-05-12 09:19:58 +02:00
pancake
81f7182800 Initial import of the flag tags registry and minor fixes for 'ft' 2018-05-11 17:18:36 +02:00
sivaramaaa
b4dd6530fe Add command afcf to print "return type function(arg1, arg2...)" (#10075) 2018-05-11 15:27:30 +02:00
Khairul Azhar Kasmiran
8011226135 arm asm.pseudo supports asm.varsub_only for fp (#10074) 2018-05-11 12:53:42 +02:00
pancake
e90fd02b97 Upgrade capstone to fix m68k bugs
Revert "Fix #9855 - Enlarge tmpbuf to 128 bytes because capstone code is crap"
- 11f99872f5d605b287461e2cfb26b68eed70a3a0.
Revert "Fix #9852 - Workaround to avoid capstone-m68k crash"
- 0607b97b0110b25f8b52657c601d83d0ae8029f9.
2018-05-11 12:51:36 +02:00
Vanellope
51d2b7894e Visual panels refactoring (#10073) 2018-05-11 11:41:22 +02:00
Luca Di Bartolomeo
731b067f25 Add every output support for agg graph + some agf fixes (#10063) 2018-05-11 10:58:33 +02:00
Paolo Monti
b32dd4ca9f Fix #2639, added support for javascript byte arrays in rax2 -F (#10065) 2018-05-11 10:58:16 +02:00
Fangrui Song
5b181a244f Fix meson (#10072) 2018-05-11 09:50:39 +02:00
Khairul Azhar Kasmiran
e32542aa85 arm asm.varsub supports asm.pseudo for fp (#10071) 2018-05-11 09:40:25 +02:00
pancake
04108092f4 Initial implementation of flag tags 2018-05-11 04:39:08 +02:00
Vanellope
44833bd342 Fixed a small stupid bug concerned with editing stack (#10068) 2018-05-10 20:42:32 +02:00
Riccardo Schirone
3961a34584
libr: remove some old "mrwx" permissions. m does not exist anymore (#10067) 2018-05-10 20:35:33 +02:00
radare
223232737a
Fix #8874 - pdf works as expected now :) (#10061) 2018-05-10 17:33:34 +02:00
pancake
c93e49a7a3 Fix ?e 2018-05-10 16:32:46 +02:00
pancake
52d0496dc2 Add missing -lm 2018-05-10 16:32:46 +02:00
pancake
0c1609e34b Fix #10050 - null deref in cmd_search 2018-05-10 16:32:46 +02:00
Maijin
5d11df9c16
Add more meaningful help for iO 2018-05-10 15:55:05 +02:00
Riccardo Schirone
2af8b55a54 libr/util: fix build by linking with math library 2018-05-10 15:00:27 +02:00
Anton Kochkov
8b46ee3816 Fix Meson build 2018-05-10 19:40:00 +08:00
pancake
32605a8d91 Fix #10060 - Add ?e? help and Implement '?ep' to print PIE charts 2018-05-10 13:13:08 +02:00
pancake
a23212b464 Add 'A' and 'd' keys in visual panels 2018-05-10 10:51:35 +02:00
Khairul Azhar Kasmiran
d1d68ad1cc Always escape backslashes for pdJ json (take 2) (#10059) 2018-05-10 10:43:08 +02:00
radare
9e08da0fa6
Improve build of libr.a and libr.dylib, fix and improve sys/ios-sdk.sh (#10046)
- Update spp and force hidden visibility
- Use R_API wisely
- RSys.prefix returns const things
- Use -install_name on Apple
- Fix merged lib visibility linking on Linux
- Use OSTYPE instead of BUILD_OS
- Honor crosscompiler-objcopy and support android like linux
- Add extra missing archives
- Fix for android
- Upgrade spp and sdb
- Skip libr. from symstall
- Add --enable-merged configure option
- Use --enable-merged on ios-sdk
- Upgrade sdb again for js0n
- Kill sys/ios-shell.sh
- Msvc dynamic build fix
2018-05-09 23:31:52 +02:00
pancake
5578d8d1ae Implement iO as a frontend for !rabin2 -O 2018-05-09 23:25:03 +02:00
Khairul Azhar Kasmiran
31f6d8ecaa
Always escape backslashes for json (#10057) 2018-05-09 22:23:27 +08:00
Francesco Tamagni
68cf813cd8 Add r_buf_new_slice (#10055)
- fix vaddr / paddr translations (and make them meaningful on slices)
- fix r_buf_fcpy_at to work with slices and with file-backed buffers (at least for reading)
2018-05-09 11:50:53 +02:00
Khairul Azhar Kasmiran
ce3ddd5f6c Allow asm.highlight color change thru ec line_highlight (#10051) 2018-05-09 09:31:33 +02:00
Paolo Monti
004031aaeb Fixed the assembling of some invalid instructions (#10049) 2018-05-08 16:46:26 +02:00
sivaramaaa
bb2f7c9211 Refactor and optimize afta (#10043)
* Refactor the afta code little bit
* Optimize afta by just emulating previous N instruction to a call
* Remove dupe vars
* Fix some minor issues
* Change type_get_size to type_get_bitsize
2018-05-08 17:05:01 +08:00
Vanellope
298f292b5d stack gets no-editable when step-debugging changes the base address of stack, or either getting out of the mode with q then getting back in as stack.delta had not been couted in, and now all fixed. (#10048) 2018-05-08 09:12:45 +02:00
Riccardo Schirone
d730bacc08
xrefs fixes (#10034)
* anal/xrefs: more uniform xref type output

* anal/xrefs: reduce confusion of `ax` command

* core/cmd_anal: add commands to add string references

* anal/xrefs: when using radare2 output, ref->at should be the second arg

* core/cmd_anal: remove afx commands, except for listing

Since we removed per-function references, now there are only global
ref/xref info, so there's no need to have per-function commands to
handle refs/xrefs.

* core/canal: use "ax" commands instead of "afx"
2018-05-08 08:41:53 +02:00