Commit Graph

20679 Commits

Author SHA1 Message Date
pancake b9a6ab5381
Empty structs are now supported in r2, no need for this hack (#16430) 2020-04-06 16:23:49 +08:00
pancake d95befca7a
Fix #16233 - ~{} works on colorized JSONs ##json (#16425)
* Fix #16233 - ~{} works on colorized JSONs ##json
* Fix issue in json_indent
2020-04-06 16:08:47 +08:00
pancake 5621f4030d
Fix #13626 - Only check for major and minor version numbers when loading plugins #core (#16424)
* Only check for major and minor version numbers when loading plugins ##core
* Fix leak
2020-04-06 16:06:28 +08:00
pancake a12d55c6c0
Fix #16394 - Make pm [file] work again ##print (#16428)
* Fix #16394 - Make pm [file] work again ##print
* Add test for pm [file]
2020-04-06 16:02:50 +08:00
Liumeo 968a354976
always non negative (#16434) 2020-04-06 16:01:17 +08:00
pancake 38b8d5929d
Fix #16413 - Analyze code refs spotted with aae ##anal (#16423)
- Find 600 functions in a MIPS binary, without this only 4 functions are found
2020-04-05 22:36:43 +02:00
pancake 6b31b40a71
Fix #13677 - Add txt command and make txf accept an argument ##types (#16422) 2020-04-05 20:31:47 +02:00
pancake 961d5007a9
Do not use r_buf_data in DEX results in 1.5x faster parsing (22s vs 33s) ##bin
* Fix some memory leaks
* Mark r_buf_data as deprecated
* Remove some spaguetti (-42LOC)
* Fix buf license header authorship
* Make parser functions return void for simplicity
2020-04-05 19:24:36 +02:00
pancake 7be2b26ec5
Use r_str_trim_head_ro instead of hacky while loops (#16416)
$ git grep IS_WHITE | grep while
2020-04-05 15:50:19 +02:00
pancake bc09cba29a
Add r2 -NN to not load plugins ##core (#16415) 2020-04-05 15:02:46 +02:00
Robin d239def52b
Updated Copyright to 2020 (#16414) 2020-04-05 11:06:01 +02:00
HoundThe c6e8fb1e30
Add anal classes to "Vb" (#16383) ##visual
* base draft for Vb for anal classes
* Added color and boundary check
* Added placeholder print of selection from class.c
2020-04-04 10:58:08 +02:00
Riccardo Schirone 90d77e2a21
r_buffer: do not move seek when using _at APIs (#16401) ##util
This allows to use r_buf_read/r_buf_write to read/write sequentially but
at the same time having random reads/writes in the buffer if needed,
without the need to save/restore the seek every time.

* Fix some uses of r_buf_read_at/write_at that assumed seek change
2020-04-04 10:31:48 +02:00
Alexis Ehret 88d8357767
Fix empty struct and add test (#16408) ##types 2020-04-03 13:07:00 +02:00
Óscar Carrasco 8262fd4201
Fix tp and tpx to accept types with spaces ##types (#16398)
* Adapt command to work without specifying offset
2020-04-03 10:44:49 +02:00
Florian Märkl 2e735dff07 Add Windows argv Formatting 2020-04-02 23:41:58 +02:00
radare 5a1df188f6
Build fixes to make emscripten builds happy (#16406) ##build 2020-04-02 17:52:03 +02:00
radare ec49299cb5
Fix memory leak reported by coverity in mach0 (#16405) 2020-04-02 16:40:09 +02:00
pancake a87fdf66ee Fix duplicated function signatures in RCore spotted by Emscripten 2020-04-02 15:53:31 +02:00
radare 3f77b9a76b
Avoid duplicated module filenames to fix static.sh ##build (#16403) 2020-04-02 14:30:27 +02:00
Khairul Azhar Kasmiran 85b11a1438
Fix #16347: o+ sets maps as writable like oo+ (#16381) ##io 2020-04-02 12:11:41 +02:00
pancake a19cf131db Rename util/diff.c to udiff.c to avoid libr.a collission ##build 2020-04-02 11:50:48 +02:00
Florian Märkl 91c58506e5
Enable R2R in C for all CI except Windows (#16354) ##test 2020-04-01 23:16:02 +02:00
Óscar Carrasco c4b62fa1c1
Implement proper tp help menu (#16397) 2020-04-01 23:15:08 +02:00
radare eaa46ca936
Implement x86 anal.jmp.retpoline switch tables (spectre/meltdown) ##anal (#16391) 2020-04-01 16:49:39 +02:00
radare 6379317f57
Add LZMA-BE magic signatures ##search 2020-03-31 21:17:02 +02:00
HoundThe 657acb2f1f
Another hotfix for the Vbc/ recursion stack overflow (#16382) 2020-03-31 17:54:17 +02:00
kuqadk3 ad88c78944
Implement hex.offset config variable to hide address column from hex-dump (#16373) ##print 2020-03-31 14:44:23 +02:00
Riccardo Schirone 38f797ae59
Fix a read out-of-bounds error by checking if there is enough data (#16374) 2020-03-31 10:22:51 +02:00
Francesco Tamagni 3f49c77ba7 Tweak arm64 ldr ESIL for var access ##anal
Tweak the esil expression for arm64 LDR in a way that
makes the local variable access detection work.
2020-03-30 22:27:07 +02:00
Khairul Kasmiran cd2715dc95 Fix interaction of ob with o: 2020-03-30 19:40:57 +02:00
pancake 090450401f Implement tc* and fix tc glitch ##types 2020-03-30 15:31:36 +02:00
pancake 5881fcd2e1 Implement icc*, in sync with ic* to get C strcuts from mach0 classes into r2 ##bin 2020-03-30 15:31:36 +02:00
pancake 2b0962af31 Add mach0 class fields with padding and sorted by offset ##bin 2020-03-30 15:31:36 +02:00
pancake 77bd3eb05e Add NSString and size_t types in tcc+r2 ##types 2020-03-30 15:31:36 +02:00
pancake 7ff47d73be WIP: Improve ObjC's IVAR fields support ##bin 2020-03-30 15:31:36 +02:00
Alexis Ehret 1020cfb3cf
Remove the FCN_OLD sdb transition ifdefs 2020-03-30 15:14:12 +02:00
mdolmen 1bf0fed6cc
Fix #16336 - null deref in tc (#16350) 2020-03-30 03:04:53 +02:00
luke-goddard 5fa10f1f96
Fix #16355 - null deref in Cvs command parsing (#16356) 2020-03-30 03:03:06 +02:00
Florian Märkl 2a9d7e9d44
Much more R2R (#16352)
* Add r2r to R2BINS
* Fix iSj. trailing newline
* Dedup default worker count in r2r
* Fix some more Tests
* Decide archos in r2r
* Add more args and run json tests with r2r
2020-03-29 21:04:51 +02:00
Florian Märkl b9538189cf
Escape broken UTF-8 in Filename (#16351) 2020-03-29 21:00:17 +02:00
Florian Märkl 2c7ecc9736
Even more R2R (#16348)
* Fix r2r without FILE
* Fix many tests for r2r-c
* Pipe stdin in r2r to make isatty() return false
* Fix a leak in r2r
* Fix lock usage in RThread
* Always print stderr on failed tests
* Break broken zip tests
* Add -j arg to r2r
* Temporarily disable some tests that js and v don't parse
* Fix ar= trailing newline
2020-03-29 18:07:44 +02:00
Florian Märkl b8ae00a6de
Make r_str_split_duplist() thread-safe (#16341) ##util 2020-03-29 00:58:17 +01:00
Khairul Azhar Kasmiran 3c7e74f674
Fix ob 0 (#16333) 2020-03-28 17:12:15 +01:00
Florian Märkl 8f0932f8eb
Fix a null deref in ds_print_relocs() (#16339) 2020-03-28 17:11:43 +01:00
Alexis Ehret aa42a16b4e
Fix #12700 (#16332)
* Removed useless ref in .h

* Add the Super-H in anal/d
2020-03-28 06:35:53 -05:00
radare 46adf34e83
Add opaddr field in ab/abj output ##anal (#16331) 2020-03-27 18:10:52 +01:00
radare 5e4cdaaa04
Always use r_getopt, do not depend on libc (not just on windows) ##core (#16325) 2020-03-27 17:06:40 +01:00
radare 9f35d62018
Improve noreturn and aesu times, show it in afi & afij ##anal (#16324)
* Fix fcn->is_noreturn cache and add tests
2020-03-27 06:15:47 +01:00
Florian Märkl 04e257bd47
R2R in C Enhancements (#16310) ##test
* Skip extras dirs in r2r by default
* Fix BROKEN loading in r2r
* Print actual diff in r2r-c
* Fix some tests for r2r-c
* Do not require stdout if not specified in r2r-c
* Address most review comments
2020-03-27 06:13:41 +01:00
radare d410ceacc7
Fix #16308 - Add fcn arg in r_core_anal_propagate_noreturn to avoid O(n) in af ##anal 2020-03-27 05:31:23 +01:00
Zi Fan fec0aea039
Decouple shlr/gdb registers profile from code (#16312) ##debug
* Sync r2 debugger registers profile with shlr/gdb
* Add new set_reg_profile function to r_debug plugin
* Add set_reg_profile to r_debug_plugin_gdb
* Change "drp" to sync r_debug plugin register profile
* Fix incorrect pointer arithmetic and code style
2020-03-27 02:00:27 +01:00
Alexis Ehret 9369ab8ebe
Use pj in zj (#16321) ##json 2020-03-27 01:44:14 +01:00
aar0nge cb8b683758
Fix #16303 - c->table_query double free (#16318) 2020-03-26 12:28:50 +01:00
philoinovsky ced0223c7a
Fix unmatched array length in core_java.c (issue #16304) (#16313) 2020-03-26 12:02:43 +01:00
Khairulmizam Samsudin 80f59a7c5f
Fix dmht for glibc caused by wrong tcache offset and definition (#16247)
* Add new function to obtain tcache chunk size

* Fix tcache address and offset in print_tcache_instance()

* Fix tcache_perthread_struct definition

* Update fc_offset to actual size of tcache

* Add test

* Rename test bin filename
2020-03-26 00:27:36 -05:00
radare 601f6983a9
Use pj in ilj ##json (#16311) 2020-03-25 23:37:04 +01:00
pancake 6af14d7a80 Fix coverity 2020-03-25 13:00:27 +01:00
gur111 a09b33a512
Fix cursor visibility after leaving visual graph (#16298) ##visual 2020-03-25 12:40:15 +01:00
Khairulmizam Samsudin 4a5161e454
Test dmha/dmh for glibc x64 (#16307)
* Minor printing fix
* Test for dmh/dmha
2020-03-25 17:43:57 +08:00
Aung Khant Ko 9374e9a1cb
Fix #16214 - segfault in =+ command 2020-03-25 10:21:25 +01:00
radare a98f662c9c
Fix ao~bytes and add test ##anal (#16299) 2020-03-24 23:11:48 +01:00
Florian Märkl 79fcf4fbff
Initial Implementation of R2R in C (#16216) ##test 2020-03-24 20:18:16 +01:00
Riccardo Schirone 0cd90b6b7e Update radare2-shell-parser for new macro syntax and fix tests 2020-03-24 15:23:35 +01:00
Riccardo Schirone e82f738370 Use r_core_cmd_str_pipe when the cmd_substitution has ! 2020-03-24 15:23:35 +01:00
Riccardo Schirone 8a8a579c35 Fix RConfigHold in case the same key is set two times
Before this patch, if you temporarily change the same variable two
times, the second time it will store the new value, which may be
restored later instead of the actual original one.
2020-03-24 15:23:35 +01:00
radare a554326013
Minor cleanup in the dex parser (#16295) 2020-03-24 15:18:55 +01:00
Florian Märkl fe825ca055
Use r_core_cmd_lines() for -c (#16290) ##core 2020-03-24 15:17:20 +01:00
radare c3dee9332c
Use @{} instead of @() and fix this modifier ##core (#16292) 2020-03-24 11:05:22 +01:00
karliss 6ba87ea7cf
Don't use r2 shell commands to implemnt an. (#16280)
* Add basic tests for an.
2020-03-23 17:38:33 +01:00
Khairulmizam Samsudin 2e85324bba
Minor fix to get dmh to work with riomap (#16286) ##debug 2020-03-23 16:25:55 +01:00
pancake 14977a6828 Improve aef by skipping calls and improving the logic ##anal 2020-03-23 09:26:20 +01:00
pancake 32b39e89cb Improve aeg command and add aaef as an alias for aef@@@F ##anal 2020-03-23 09:26:20 +01:00
pancake 32580864ff Code cleanup and refactoring for analysis 2020-03-23 09:26:20 +01:00
Aung Khant Ko 21b5aed83e
Fix #16251 - r2 command from inside r2 works again (#16282) 2020-03-23 02:09:48 +01:00
radare 57779aa273
Fix #16265 - Segfault in rabin2 -O e/123 with ELF ##bin 2020-03-23 02:08:17 +01:00
pancake d0b98938c6 Fix infinite loop in Vbc/ - still unusable, but not crashing at least 2020-03-22 14:17:19 +01:00
David CARLIER 2b889ddbb1
Fix memory leak in RBin. NE relocations ##bin. (#16276) 2020-03-22 13:24:06 +01:00
Rikard Falkeborn 58adb00765 Remove redundant condition
There is already an identical condition, with an identical body.
2020-03-22 12:49:47 +01:00
Alexis Ehret 1fb1be70a7 Add first version of /m search with hits 2020-03-22 12:48:50 +01:00
pancake ee3932dcb7 Missing newline in Vbc? class browser help message 2020-03-21 20:19:02 +01:00
pancake 79c5da3b1e Code cleanup in parse.x86_pseudo 2020-03-21 16:52:43 +01:00
Khairul Azhar Kasmiran 3a8e8aca81 Do fix for /F tests on Windows 2020-03-21 16:26:19 +01:00
pancake fc9a7623fa Fix #16263 - Do not newline after showing switch cases ##disasm 2020-03-21 00:25:45 +01:00
radare 0968e0f7b5
Add pj_ad api to print raw data ##json 2020-03-20 19:35:41 +01:00
pancake 71d3709d25 Fix last covs 2020-03-20 13:58:12 +01:00
Sylvain Pelissier ef6e146326
Display correct lengths for cryptography search commands (#16262) ##search 2020-03-20 12:13:34 +01:00
kuqadk3 0707122d3e
Fix print string in radiff -qu (#16212) ##diff 2020-03-19 18:23:10 +01:00
radare bc38b17a62
Remove r_str_rmch and simplify r_str_replace_char* ##util (#16258) 2020-03-19 17:54:28 +01:00
radare 728bc70266
Optimize 'tl', r_core_link_stroff and r_type_link_at (0.01s vs 3s) ##types (#16257) 2020-03-19 15:44:51 +01:00
Khairulmizam Samsudin 6a327d95de
Detect glibc version and set dbg.glibc.tcache accordingly (#16255) ##debug 2020-03-19 15:26:12 +01:00
radare 56545dd54c
Optimize r_anal_get_bbaddr() to make graph navigation faster ##graph (#16252) 2020-03-19 11:23:57 +01:00
Tigre000 4c684f1971
Fix arm64 branch assemble (#16205) ##asm 2020-03-19 00:21:48 +01:00
radare 6c16c19173
Use the proper API to find function in `tl` ##types (#16246) 2020-03-18 19:50:19 +01:00
HoundThe 7a2d4b2806
Idea for fixing id? and idp? etc commands (#16244) ##bin 2020-03-18 00:03:33 +01:00
Florian Märkl 8945ec42be
Add R_TYPE_TYPEDEF to RTypeKind (#16243) ##types 2020-03-17 17:21:05 +01:00
Florian Märkl cbbe0188c3
Remove unused cmpfcn function and a useless var (#16242) 2020-03-17 15:11:16 +01:00
Florian Märkl 0eb98d24be
Fix all Warnings for GCC 9 (#16223) 2020-03-17 13:31:28 +01:00
radare 66ed0133e2
Initial r_anal_fcn_* purge (#16238) ##refactor 2020-03-17 12:58:39 +01:00
radare 8a2401ca4b
Fix PE endian and alignment issues spotted by ASAN ##bin (#16240) 2020-03-17 12:06:45 +01:00