Commit Graph

25345 Commits

Author SHA1 Message Date
RHL120
6873f43fed
Fix some problems when renaming projects ##projects
* r_project_rename should only set the project struct not move files
2022-12-10 22:10:32 +01:00
pancake
b8e6b52aac Also replace __UNIX__ with R2__UNIX__ 2022-12-10 20:32:10 +01:00
pancake
97a6439055 Do the same for __WINDOWS__ -> R2__WINDOWS__ 2022-12-10 20:32:10 +01:00
pancake
78a26e15fe Double lowerdash defines should be defined only by the compiler ##build 2022-12-10 20:32:10 +01:00
pancake
b427f9b79a Fix strbuf assert in rasm2 when picking an invalid arch plugin 2022-12-10 20:26:07 +01:00
pancake
27a5bf0157 Fix negative unsigned cast in the xtensa disassembler ##arch 2022-12-10 19:12:37 +01:00
pancake
3f08120ac1
Import the quickjs rlang plugin ##lang
* Fix 2 UB and 4 portability bugs in quickjs
2022-12-10 18:58:33 +01:00
pancake
795585d048 Missing license field in the io.isotp plugin 2022-12-10 15:45:49 +01:00
pancake
d0c220238d
Add RAnalOp.weakbytes() and move more analop apis to arch ##arch 2022-12-09 18:42:56 +01:00
pancake
00d45feb7e Handle js. and source hint the command cases 2022-12-08 23:24:41 +01:00
pancake
3aa5ea0f22 Define RPluginMeta and RPluginStatus ##api 2022-12-08 22:11:38 +01:00
pancake
59c2811e4f Implement py command and add stdin slurp support for js- too ##lang 2022-12-08 22:11:38 +01:00
pancake
0f45f2cadd Add 'js' and 'js:' commands, as well as improve help for #!? ##lang 2022-12-08 22:11:38 +01:00
pancake
71c7a53661 Fix null deref in rlang ##lang 2022-12-08 18:57:12 +01:00
pancake
77efdaca74
Fix Cydia and meson build 2022-12-08 17:21:24 +01:00
pancake
58dbbc7fb4
Move anal.xap into the arch ##arch 2022-12-08 16:03:31 +01:00
pancake
c1f1495d5b Fix the meson build 2022-12-08 15:25:41 +01:00
pancake
ab3bccc3e6 Add test for cwd source listing, CLL and list ##bin 2022-12-08 15:06:55 +01:00
pancake
34eaf9582b Add warning when loading DWARF5 files (not supported) ##bin
* Add test for dwarf 2 3 4 and 5
2022-12-08 15:06:55 +01:00
pancake
6896f6f6a7 Always show all the archinfo, even when not provided by the plug ##analysis 2022-12-08 15:06:41 +01:00
pancake
d7c603ce82 Dont show analysis progress on non-interactive shells ##analysis 2022-12-08 13:33:53 +01:00
pancake
b6c8fa29cc Update tests and better arch.patch/modify callback ##arch 2022-12-08 13:33:53 +01:00
pancake
2630ef28cf Move anal.{6502,snes} into arch ##arch 2022-12-08 13:33:53 +01:00
pancake
e0e1208e2a Fix #21136 - o <tab> autocompletion not working ##shell 2022-12-08 01:57:22 +01:00
pancake
894c193685 New command CLL (aka list) show function source using addrline (dwarf) info ##print 2022-12-08 00:45:47 +01:00
pancake
24ecb1a155 Show help when using invalid subcommand of afi ##shell 2022-12-08 00:09:07 +01:00
pancake
062758594f Implement abo and afbo commands to list opcode offsets in function or bb ##shell 2022-12-08 00:09:07 +01:00
pancake
46cfae097e Remove one global in pd and reorganize other globals in disasm.c 2022-12-08 00:03:56 +01:00
pancake
e8b17faf76 Add test for the obm with CL, support noncwd paths ##bin 2022-12-07 23:06:43 +01:00
pancake
6dcc3837af Fix segfault in poa 1 ##crash 2022-12-07 23:06:43 +01:00
pancake
f13a61bcbb Implement o-. command, add help for future o-$ ##shell
* Closes the current file
2022-12-07 23:06:43 +01:00
pancake
3d84a268dd Use obm when spotting a companion dwarf file on macOS ##bin 2022-12-07 23:06:43 +01:00
pancake
a544c0d15a Implement RBinFile.merge() and obm command to use it ##bin 2022-12-07 23:06:43 +01:00
pancake
3fe62b7679 Initial implementation of the ob-- command to close the last binobj ##bin 2022-12-07 19:49:32 +01:00
pancake
7d452fd973 Autoload the dwarf companion file on macOS systems if available ##bin 2022-12-07 19:49:32 +01:00
pancake
d81508d764 Add new RCore.cmdCallf() helper function ##api 2022-12-07 19:49:32 +01:00
pancake
560d5efced
Update to the latest sdb (2.0.0)
* Experiments to integrate the custom heap into r2 will be based on the sdb implementation
2022-12-07 19:08:21 +01:00
pancake
6d68fc18a6
Implement asm.bytes.align to justify them to the right ##disasm 2022-12-07 15:02:00 +01:00
pancake
1a0b6a9abe
Kill RAsmOp, we can reuse RAnalOp in here ##arch 2022-12-07 14:30:22 +01:00
RHL120
ac513ddc34
Fix some bugs in projects ##projects
* Use r_file_is_directory
* Return true instead of false in r_project_rename
* Free core->prj->path before resetting it
* Check for null in r_project_rename
2022-12-06 19:08:23 +01:00
pancake
4bef862bd2 Improve pickle disasm on invalid instructions ##arch 2022-12-06 19:06:38 +01:00
pancake
4b769417e2
Remove RAsmPlugin struct and add the 'aia' command to show archinfo ##arch 2022-12-06 12:16:45 +01:00
pancake
3a16336491 Use RAnalOp instead of RAsmOp in r_core_visual_bit_editor ##visual 2022-12-06 11:00:18 +01:00
pancake
ccb7351b5e
Merge RParse into RAsm ##api 2022-12-03 02:26:41 +01:00
pancake
afaf4cbb05 Fix ios static build 2022-12-03 01:06:16 +01:00
pancake
b4b8b2ee99
Move the remaining asm plugins into the arch ##arch 2022-12-03 00:32:52 +01:00
pancake
a4707696d2 Fix CI build 2022-12-02 23:38:04 +01:00
pancake
903b5f6864 Expose RCore.cmdCall() and fix b64: command + add tests ##shell
* Run r2 commands without evaluating any special char
2022-12-02 23:32:24 +01:00
pancake
fa7fc5b6cd Fix and improve static build, faster libr.a with libtool if available ##build
* Use libtool and CC instead of AR to merge all libraries into libr.a
* Fix archives files for the v35 disassemblers
2022-12-02 23:04:27 +01:00
pancake
3cf4f66811 Add "lua" as an alias for "#!lua" ##lang 2022-12-02 14:56:10 +01:00
pancake
3b033951be Fix rlang build on windows 2022-12-02 15:56:16 +01:00
pancake
e1b1f85397 Fix the meson build 2022-12-02 14:07:17 +01:00
pancake
07b5771f50 Minor plugin selection improvements ##arch 2022-12-02 12:07:09 +01:00
pancake
f0f778994d
Move asm.nasm into the arch ##arch 2022-12-02 12:02:51 +01:00
pancake
82c25407af Refactor RLang api to use the new design ##api 2022-12-02 11:59:33 +01:00
condret
36bf340b4e Kill io->buffer ##io 2022-12-02 03:48:29 +01:00
condret
006a23ab39 Remove unused fcn declarations ##io 2022-12-02 03:48:29 +01:00
pancake
26c5221d5e Document aanf as an alias for afna@@ for ergonomic reasons 2022-12-01 17:49:53 +01:00
pancake
693d235b09 Fix #21080 - Add cfg.codevar to change the buffer varname from pc ##print 2022-12-01 17:49:15 +01:00
pancake
b53a1583d0 Fix integer overflow in fuzzed dwarf rendering in graphs ##crash
* Reported by @solid-snail via huntrdev
* BountyID: c6f8d3ef-5420-4eba-9a5f-aba5e2b5fea2/
* Reproducer: `intof_mod`
2022-12-01 13:57:46 +01:00
pancake
7ef58beabf Use r_hex_bin2strdup instead of copypasta in util.js2hex 2022-12-01 13:36:20 +01:00
pancake
85052958b9 Add support for tarball and zip packages ##r2pm 2022-12-01 13:08:46 +01:00
pancake
ee5f9a635f Improve error checking in r2pm and improve libr archive creation 2022-12-01 09:33:19 +01:00
pancake
1a8eac88b4 Move asm.vasm into arch.any_vasm ##arch 2022-12-01 09:33:19 +01:00
Dennis Goodlett
6925d3264a Assemble large pickle instructions ##arch 2022-12-01 09:32:32 +01:00
pancake
04da3be921 Improve libr.a creation with ar -rcT instead of ar -x ##build
* Support static builds with two object files sharing the same name
2022-11-30 22:50:58 +01:00
pancake
57e8214add Dont use |Usage, because Usage is the new trend 2022-11-30 19:04:20 +01:00
pancake
05947def03
Move the preincrement and void arg from tests to lint.sh ##syntax
* The regex was not correct, so it was missing a lot of cases
2022-11-30 17:13:32 +01:00
pancake
55d59eea17 Some more RConfig.geti -> getb code cleanup, wip new lint 2022-11-30 17:11:39 +01:00
pancake
19a377bbda Fix and move failing tests, reorder lib build ##arch 2022-11-30 15:43:54 +01:00
pancake
7ca2004fc9 Move the arm assembler plugin from asm to arch ##arch
* force 4 jobs in bin/d
2022-11-30 15:43:54 +01:00
pancake
28ca83cd73 Move all the arch plugins to the new plugin structure structure 2022-11-30 15:43:54 +01:00
pancake
ffdc611fdc Move the arch.p.arch_pickle to arch.p.pickle 2022-11-30 15:43:54 +01:00
pancake
0b48b67fd1 Temporary add RAnal as dependency for REgg ##arch 2022-11-30 15:43:54 +01:00
pancake
8c8a06cfd7 Improve x86.nz assembler parsing and other bugs in rnum ##arch
* Disable all the gas tests, will be re-enabled with arch.any.as
2022-11-30 15:43:54 +01:00
pancake
f08fc91dd9 Initial implementation of the arch.any.as plugin ##arch 2022-11-30 15:43:54 +01:00
pancake
53b28aecab Better handle of RNum errors for egg and arch.x86.nz ##arch 2022-11-30 15:43:54 +01:00
pancake
d5027d07d3 Support reg+idx and idx+reg in x86.nz assembler ##arch 2022-11-30 15:43:54 +01:00
pancake
0b145c5e40 Move the x86.nz plugin ##arch 2022-11-30 15:43:54 +01:00
condret
0d32c3748f Add esil.dfg.mapinfo and esil.dfg.maps config vars ##anal 2022-11-30 09:53:29 +01:00
pancake
684a4599f6
Fix use-after-free after @@@e spotted by meme ##crash 2022-11-29 12:28:36 +01:00
pancake
f2afd9cc1e Use rabin2 -rO for raw dump operations ##bin
* Useful to dump the section contents in binary instead of hexpairs
2022-11-29 10:41:55 +01:00
pancake
fa8fd1a066 Use glob expressions to specify section name to dump ##bin
* Handy for oneliners when .TEXT changes
2022-11-29 10:41:55 +01:00
pancake
fbe046ff61 Show number conversion error messages in ?v command ##shell 2022-11-29 00:38:34 +01:00
pancake
f295af7204 Fix asm/dis/esil flagstring in rasm2 -LLL 2022-11-28 11:26:31 +01:00
pancake
d863d7159b
Move the RParse.cparse into RAnal.cparse ##refactor 2022-11-28 10:28:07 +01:00
pancake
90f419b4d3 Remove path limit in rust rlang scripts 2022-11-26 03:46:58 +01:00
Mohamed Lemine Ould El-Hadj
3ff2ab4927 Fix issue with cursor disappearing towards the bottom of the screen ##visual 2022-11-27 08:30:07 +01:00
pancake
7b53d95dd7 Fix drt? and drr? spotted by d?* 2022-11-27 02:52:08 +01:00
pancake
02b7d165b4
Bring back the 'dms' command ##debug 2022-11-27 02:51:42 +01:00
Sylvain Pelissier
0d8afb5a33
ASN.1 and x509: correct OCTET_STRING and Public key info parsing ##print
Update x509
2022-11-26 23:31:13 +01:00
Sylvain Pelissier
45727c1246
rax2: corrects base64 encoding for null bytes ##tools 2022-11-26 23:29:38 +01:00
pancake
37b279b6f4
Fix asm.acur supporting arch, anal and asm plugins ##arch
* Fix asm.acur supporting arch, anal and asm plugins ##arch

* Fixes the arch/bits combo selection order issue for riscv tests
* Move the riscv arch plugin to the new plugin structure
* Deprecate r_asm_setup ()
2022-11-26 17:49:10 +01:00
condret
6e351d0512 Some more improvements to esil_dfg ##anal 2022-11-26 15:15:19 +01:00
MewtR
aebd92c76e
Don't draw two cursors when too many bytes are on disasm panels ##visual 2022-11-26 10:03:45 +01:00
0x8ff
7a9a6a0b46 Fix typo in ios-syscalls.txt
__mac_mount was listed twice with the same number (424)
2022-11-26 10:01:41 +01:00
pancake
b0dee825c7 Massage the anal to get the plug in shape and make the tests happy 2022-11-25 23:32:41 +01:00
Murphy
75c2d8a1ac Move anal_riscv to arch_riscv ##arch 2022-11-25 23:32:41 +01:00
pancake
bcfcf84125 Fix r2 -2 ##tools 2022-11-25 12:48:10 +01:00
pancake
5f75a06969 Honor EDITOR in r2pm -e ##r2pm 2022-11-25 11:09:12 +01:00