Commit Graph

289 Commits

Author SHA1 Message Date
pancake
2630ef28cf Move anal.{6502,snes} into arch ##arch 2022-12-08 13:33:53 +01:00
pancake
ccb7351b5e
Merge RParse into RAsm ##api 2022-12-03 02:26:41 +01:00
pancake
b4b8b2ee99
Move the remaining asm plugins into the arch ##arch 2022-12-03 00:32:52 +01:00
pancake
f0f778994d
Move asm.nasm into the arch ##arch 2022-12-02 12:02:51 +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
1a8eac88b4 Move asm.vasm into arch.any_vasm ##arch 2022-12-01 09:33:19 +01:00
pancake
afaea5d82f Fix iOS builds 2022-11-30 19:15:59 +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
f08fc91dd9 Initial implementation of the arch.any.as plugin ##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
Murphy
75c2d8a1ac Move anal_riscv to arch_riscv ##arch 2022-11-25 23:32:41 +01:00
pancake
be9c20ce76
Move anal.rsp to the new home ##arch 2022-11-15 13:23:55 +01:00
pancake
9243a98ae7
Move anal.v810 into arch.v810 ##arch 2022-11-14 23:45:59 +01:00
pancake
fb7326b64a Move pickle from anal to arch and add it to meson ##arch 2022-11-13 23:03:42 +01:00
pancake
46e25f8844 Remove anal.malbolge and fix CI r_esil issues ##arch 2022-11-13 22:38:58 +01:00
pancake
ce3c4f16cc
Parse the PT_DYNAMIC elf section for the preinit pointers ##bin
* cache section parsing in macho and elf
* Add RList.clone() api
2022-11-11 03:04:46 +01:00
pancake
4c834515da
Move the 'sh' plugin to the new home ##arch
* Honor regprofiles from arch via anal
* Add some more plugins for the wasi builds
2022-11-09 18:51:50 +01:00
pancake
539c5aee90 Honor plugin name in rate matching for RArch.use ##arch
* Fixes amd29k regressions
2022-11-07 19:19:21 +01:00
pancake
163c24c21d Remove anal.amd29k to fix static links because it's already moved to arch. 2022-11-06 18:39:04 +01:00
pancake
5d07b40478
Add crosscompiling support with sys/zig.sh ##build 2022-11-05 23:33:31 +01:00
pancake
c6acdc3926 Fix minor bug in the dockerfile 2022-11-04 18:52:25 +01:00
pancake
ea1b5c3ba1 Update docker scripts 2022-11-04 18:04:11 +01:00
pancake
cbb088534b Move jdh8 from asm/anal to arch ##arch 2022-11-03 21:13:52 +01:00
pancake
cb08a6d6ff px* is an alias for pc* ##print 2022-11-02 22:03:45 +01:00
pancake
0798cd6adf Upgrade to the latest wasi16 sdk ##wasm 2022-11-02 22:03:45 +01:00
pancake
c1624396ac Load cpu descriptions for multiarch plugins ##asm 2022-11-02 18:29:05 +01:00
condret
e807f6cb8e Add treebuf io plugin ##io 2022-10-22 09:15:51 +02:00
pancake
fee1a457c1 Move doc/node.js to the r2pipe repository and define engine node>16 2022-10-14 10:34:25 +02:00
pancake
f7bde37f60 Add dummy parse.evm plugin to fix portability of test ##disasm 2022-10-06 20:32:30 +02:00
pancake
ccd79d9e36 Add a dummy bpf pseudo plugin ##disasm
* rename Parse.justify() to Str.fixSpaces()
* Fixes portability of testsuite
2022-10-06 20:32:30 +02:00
condret
20942d1a2e Copy anal_amd29k.c to rarch ##arch 2022-10-03 13:05:30 +02:00
condret
bd50eeef38 Add R_LIB_TYPE_ARCH and i4004 arch-plugin ##arch 2022-09-23 04:38:35 +02:00
pancake
5f3ed93313 Initial work on the way RCrypto handles plugins ##crypto
* Implement RCrypto.entropy plugin to replace the RHash one
* Not yet used, just structured to move forward
* Add description and type fields in the RCryptoPlugin
* De-duplicate RCrypto.list() logic into a single function
* Deprecate RHash.name() and RCrypto.name()
2022-09-21 20:54:08 +02:00
pancake
aab694d655 First arch plugin (arch.null), implement basic lib api ##arch
* Still far from usable, no dynamic plugin loading
* No way to retrieve a decoder yet
2022-09-21 08:22:55 +02:00
pancake
8e965bef30 Release 5.7.8 - codename "boredom" 2022-09-13 18:08:16 +02:00
pancake
943c01c16d
Move the asm.m68k.gnu into the anal ##refactor 2022-09-07 01:31:48 +02:00
pancake
f0434b2dcf
Merge the asm.or1k plugin into the anal one 2022-09-06 16:29:00 +02:00
pancake
578e42ffcb
move asm.arm_windebg to anal.arm_wd ##refactor 2022-09-06 14:24:55 +02:00
pancake
d3ff741515 Move lanai from asm to anal ##refactor 2022-09-05 17:49:54 +02:00
pancake
27556a3f74 Move the hppa plugin from asm to anal ##refactor 2022-09-05 16:42:49 +02:00
pancake
64b4ef2aff Merge asm.arm.gnu into anal.arm.gnu ##refactor 2022-09-03 19:08:50 +02:00
pancake
64904ca394
Move asm.ppc.cs into anal.ppc.cs ##refactor 2022-09-02 19:19:16 +02:00
pancake
9724055874 Initial implementation of the reg:// io plugin ##io 2022-08-23 23:27:35 +02:00
pancake
53f646f098 Add initial fs.zip plugin, listing only for now ##fs 2022-08-22 01:50:32 +02:00
pancake
1e3e198818 Rename asm.arm_cs to asm.arm ##arch 2022-08-20 02:39:01 +02:00
Richard Patel
5c4618fe65 Add support for REL file format plugin ##bin
* Used by the Nintendo Wii
2022-08-19 13:38:29 +02:00
pancake
daee03aec9 Merge asm.sparc_gnu into anal.sparc_gnu ##arch 2022-08-19 13:31:47 +02:00
pancake
dfb3504126 Initial implementation of the xattr io plugin ##io 2022-08-17 23:18:11 +02:00
pancake
620c3fa3dd Fix (null) license on r2 -L 2022-08-14 19:19:31 +02:00
Sylvain Pelissier
5abc76e288
Add SM4 block cipher ##crypto 2022-08-08 19:23:33 +02:00
pancake
ddf483893e Test and benchmark --with-sysmagic in the CI ##search
* Improve output of search.verbose
* Remove conflictive magic signature
2022-08-07 16:24:08 +02:00
pancake
a1c68b92dd After release version bump 2022-08-01 19:39:03 +02:00
pancake
2913f019f9 Release 5.7.6 - codename mapi 2022-08-01 16:56:33 +02:00
pancake
02989468cd
Merge asm.riscv into anal.riscv ##refactor 2022-07-31 21:42:19 +02:00
Dennis Goodlett
0889cb74c0
Add python pickle machine (pypm) dissassembler ##anal 2022-07-21 18:14:37 +02:00
Lazula
7fcee265ef
Merge asm.dalvik into anal.dalvik (#20455)
* Remove dalvik-specific macros in r_anal.h and r_asm.h, use static functions in anal_dalvik.c instead
* Move dalvik opcode.h into anal/arch
* Comment out unimplemented dalvik_opasm
2022-07-17 16:29:54 -05:00
pancake
e3c09aa9c6
Build r2 with muon+samu ##ci
* Remove asm.arc leftovers
* Fix r2pm -r return value
2022-07-08 22:44:46 +02:00
pancake
b6186969eb
Merge arc from asm into anal and build it with meson ##refactor 2022-07-08 20:03:18 +02:00
pancake
77708acd92
Merge v850.np into v850 ##refactor
* DIsguise `dispose` as a `ret` when 3 arg involved
* The old v850 plugin is available via asm.cpu=e0
2022-07-08 19:20:18 +02:00
condret
230f735c52 Merge asm_x86_cs into anal_x86_cs ##refactor 2022-07-08 12:30:31 +02:00
pancake
8939854b8c Honor opasm in rasm2 -LL output ##tools 2022-07-07 19:02:56 +02:00
pancake
f78330e37e
Merge asm.mips(cs,gnu) into anal.mips ##refactor 2022-07-07 18:43:00 +02:00
pancake
cde375da69
Merge asm.tms320 into anal.tms320 ##refactor 2022-07-07 12:40:05 +02:00
Sergi Àlvarez i Capilla
3805619337 After release version bump 2022-07-07 02:08:15 +02:00
Sergi Àlvarez i Capilla
5bc3bf4e6c Release 5.7.4 2022-07-07 00:40:00 +02:00
pancake
d93c452768
Merge asm.java into anal.java ##refactor
* Exposes an asm.assembler bug so we disable that for now

Co-authored-by: Richard Patel <me@terorie.dev>
Co-authored-by: pancake <pancake@nopcode.org>
2022-07-03 11:15:20 +02:00
pancake
1ba163cd76 Move asm.sh disassembler into the anal.sh ##refactor 2022-07-01 18:08:03 +02:00
condret
e9e427876f Merge asm_rsp into anal_rsp ##refactor 2022-06-30 19:19:48 +02:00
condret
39cd506acf Merge asm_propeller into anal_propeller ##refactor 2022-06-30 03:50:12 +02:00
condret
07a0a039c7 Merge asm_m680x_cs into anal_m680x_cs ##refactor 2022-06-29 19:00:38 +02:00
condret
aae541d4a5 Merge asm gb into anal ##refactor 2022-06-29 15:32:22 +02:00
pancake
1b5fc981c3 Move asm.dcpu16 plugin to r2-extras as its considered a dead arch 2022-06-28 16:41:40 +02:00
pancake
0f8321842f
Merge the asm.mcs96 plugin into anal ##refactor 2022-06-28 14:32:12 +02:00
pancake
d5f9bdf1c2
Merge asm.cris into anal.cris ##refactor 2022-06-28 12:09:30 +02:00
Richard Patel
6ab659698e
Merge asm.8051 into anal.8051 ##refactor
* Respect R_ANAL_ARCHINFO_INV_OP_SIZE during disasm
2022-06-27 10:44:01 +02:00
pancake
f5fd629603
Merge asm.sparc into anal.sparc ##refactor
Co-authored-by: Richard Patel <me@terorie.dev>
Co-authored-by: pancake <pancake@nopcode.org>
2022-06-26 20:07:23 +02:00
Richard Patel
b7a3300596 Merge asm.alpha into anal.alpha ##refactor 2022-06-26 20:06:51 +02:00
pancake
cf416293ff
Move the lm32 plugin into the anal ##asm 2022-06-26 12:38:36 +02:00
pancake
986271aa15 After release version bump 2022-06-23 13:30:58 +02:00
Sergi Àlvarez i Capilla
1ec4d1bae9 Release 5.7.2 - codename: "Snow Floppa" 2022-06-22 02:11:35 +02:00
Richard Patel
8e0b252036 Merge asm.avr into anal.avr ##refactor 2022-06-17 13:36:28 +02:00
Richard Patel
d4837e1c59 Merge asm.xap into anal.xap ##refactor 2022-06-17 12:57:31 +02:00
Richard Patel
e34f1e0356
Merge asm.i8080 into anal.i8080 and add a test ##refactor 2022-06-17 11:24:29 +02:00
Richard Patel
628dd5fa49 Merge asm.xcore_cs into anal.xcore_cs ##refactor 2022-06-17 11:23:59 +02:00
Richard Patel
fcbd71cf50 Merge asm.amd29k into anal.amd29k ##refactor 2022-06-17 11:23:07 +02:00
Richard Patel
b07555876a Merge asm.h8300 into anal.h8300 ##refactor 2022-06-17 08:03:30 +02:00
condret
0a26ad1eb6 Fix build static.nogpl 2022-06-17 06:57:01 +02:00
Richard Patel
2116778e1e Merge asm.lh5801 into anal.lh5801 ##refactor 2022-06-16 20:09:14 +02:00
Richard Patel
2301a79510 Merge asm.cr16 into anal.cr16 ##refactor 2022-06-16 19:41:38 +02:00
Richard Patel
22a184f0bc
Merge asm.v850 into anal.v850 and add a test ##refactor 2022-06-16 18:17:27 +02:00
condret
52d5c815e2 Merge asm.malbolge into anal.malbolge ##refactor 2022-06-16 04:11:23 +02:00
Richard Patel
1f434ced7a Merge asm.v810 into anal.v810 ##refactor 2022-06-16 01:53:17 +02:00
Richard Patel
c0905d0d98 Merge asm.pdp11 into anal.pdp11 ##refactor 2022-06-16 01:40:22 +02:00
Richard Patel
3df0fb0168 Merge asm.6502 into anal.6502 ##refactor 2022-06-15 14:51:53 +02:00
Richard Patel
2931a6cb63 Merge asm.riscv.cs into anal.risc.cs ##refactor 2022-06-10 22:37:50 +02:00
pancake
e85575bea9 Initial import of the assembler fuzzer 2022-06-10 13:56:15 +02:00
pancake
709826488f
Move asm.pyc to anal.pyc ##refactor 2022-06-09 17:09:29 +02:00
pancake
bd4cf6bb2e
Merge asm.nios2 into anal.nios2 ##refactor 2022-06-09 04:02:27 +02:00
pancake
67af169fb7 Fix some more bugs spotted by the docker fuzzer 2022-06-03 20:44:35 +02:00
pancake
f59a7717e4 Add docker fuzzer image and fix all the spotted bugs 2022-06-03 20:10:25 +02:00
pancake
8818039731 After release version bump (5.7.1) 2022-06-03 01:55:33 +02:00
pancake
409eb40169
Initial import of the asm.bpf plugin from extras ##arch
* Supports disassembly, static op analysis and esil
* Assembler is implemented but commented, needs some cleanup
2022-06-03 01:43:03 +02:00
Richard Patel
4162fe8079
Add initial anal.bpf.cs plugin + disasm tests ##arch 2022-06-03 01:35:05 +02:00
condret
7984fae603 Move i4004 asm to anal ##anal 2022-06-01 07:55:29 +02:00
pancake
09569c1d5c Release 5.7.0 - Shining Darkness 2022-05-31 03:15:26 +02:00
pancake
4a7b17f828
Move the asm.ppc.gnu into the anal ##asm 2022-05-30 14:24:06 +02:00
pancake
575ef7265a
Remove the v850.gnu plugin ##asm 2022-05-30 14:13:09 +02:00
pancake
1bb66144aa
Fix disp[ep] regression for v850.np ##disasm 2022-05-30 12:52:46 +02:00
pancake
40d96e1793
Move the asm.pic into anal.pic ##asm
* Fix static build issue with dupped symbols
2022-05-19 10:40:28 +02:00
pancake
54826ec79b Fix duplicated io plugin in static.nogpl 2022-05-18 10:30:55 +02:00
pancake
5ee2c92830
Fix #13196 - Honor SHARED in configure-plugins ##build 2022-05-18 09:06:30 +02:00
condret
8292fff042 Move VAX disassembler to anal ##anal 2022-05-18 03:26:04 +02:00
pancake
a2c2036997
Move asm.snes into anal.snes ##asm 2022-05-16 12:33:27 +02:00
pancake
88a36ca9ea Add bin.xtr.xalz plugin using the new loadbuf field ##bin 2022-05-16 12:28:49 +02:00
condret
cdfaec4270 Do the whitespace thing that pancake wanted me to do ##anal 2022-05-10 11:42:50 +02:00
Jose Antonio Romero
4c6fdbf5b6 Initial import of the bin.s390 plugin ##bin 2022-05-09 00:55:01 +02:00
pancake
2beaa78069
Remove asm.bf, and move its .opasm to the anal.bf ##anal (#20070) 2022-05-08 13:36:42 +02:00
pancake
e90b684e15 Remove the asm.arm.v35 and move (and fix) the mnemonics cb ##anal 2022-05-07 22:02:32 +02:00
pancake
eceef902b1
Move jdh8 asm plugin to anal 2022-05-06 10:17:45 +02:00
pancake
cbd43edef5
Move tricore from asm to anal ##arch 2022-05-02 00:38:20 +02:00
pancake
0014b3ae8d Move mcore into anal ##refactoring 2022-05-01 23:20:30 +02:00
pancake
4eab788dcc Move asm.xtensa into anal. fix dupplicated symbols linkage bug ##anal 2022-05-01 22:18:43 +02:00
pancake
cdd4748192 Move asm.s390* into anal.s390* and fix aod when not using asm plugins ##refactor 2022-05-01 22:18:43 +02:00
pancake
8b81e8fe14 After release version bump. Expect ABI breaks until 5.7.0 is out 2022-04-19 01:46:10 +02:00
pancake
d94100d386 Release 5.6.8 - Codename: remora 2022-04-19 01:03:53 +02:00
n01e0
460b25e8f0
Update r2pipe for use with docker (#19960) 2022-04-14 20:44:33 +02:00
Sergi Àlvarez i Capilla
7412ed4869 After release version bump 2022-03-23 11:52:05 +01:00
Sergi Àlvarez i Capilla
866a80ffbb Release 5.6.6 2022-03-22 17:42:38 +01:00
pancake
801dd326a0 Remove the hexagon from anal ##analysis
* Too large (2.2MB) and too slow to build, time explosion with -O2
* It's outdated and not maintained, better use r2ghidra one
* Move this code into extras (or the updated one)
* Still available via r2pm
2022-03-22 01:04:34 +01:00
pancake
2aaa5b4e21
Unify asm.z80 into anal.z80 ##analysis
* Clarify license conflict with the z80 plugin
* That's -50LOC (but can be more)
2022-03-10 18:18:15 +01:00
Sergi Àlvarez i Capilla
447128d1f2 After-release version bump 2022-03-03 12:26:58 +01:00
Jules Maselbas
14731d6366 Add anal plugin for kvx architecture
KVX is VLIW architecture, kind of like a DSP, it can execute more than
one "instruction" per cycle. Each cycle a bundle of instruction is
executed which is comprised of up to 6 instructions. The general rules
for bundle are: only one BCU instruction (which comes first); only one
LSU instruction; and up to 4 ALU instructions (depending on the type).

In assembly the end of a bundle is marked by a `;;` in an empty line,
here in r2 (to make things more compact and readable) the end of bundle
is appended after the last instruction, but beware that this is not valid
kvx assembly.
2022-03-02 13:56:34 +01:00
pancake
b636941cef Release 5.6.4 2022-02-28 12:30:02 +01:00
pancake
3e656374ed Take care of package.json when running autogen 2022-02-26 01:45:20 +01:00
Sergi Àlvarez i Capilla
99a3887e6a Add rasm2 and rax2 wasi/wapm packages ##build
* wapm install pancake/r2
  $ wapm run r2 -
* wapm install pancake/rax2
  $ wapm run rax2 1+1
* wapm install pancake/rasm2
  $ wapm run rasm2 -a x86 -b 32 -d 90
2022-02-16 10:58:03 +01:00
Sergi Àlvarez i Capilla
4a11460c9d Build fixes for wasi/wapm/wasm and update sdb ##build 2022-02-16 10:58:03 +01:00
Sergi Àlvarez i Capilla
d69b3d11b6 Initial import of the XALZ bin plugin ##bin
* Add tests for the XALZ file format
2022-02-10 19:59:17 +01:00
pancake
5e92a476cb
Merge asm.msp430 into anal (#19639) 2022-01-28 20:38:29 +01:00
Sylvain Pelissier
0698f0b8f9
Remove asm.m68k and merge disasm into the anal (#19637) 2022-01-28 09:30:15 +01:00
Sylvain Pelissier
61b2667d77
Remove asm.6502_cs and merge disasm into the anal (#19632) 2022-01-26 16:37:19 +01:00
pancake
e8fdd5926f Initial import of the evm.cs plugin ##arch 2022-01-21 23:10:40 +01:00
pancake
6ae845c991
Move asm/wasm into anal, and add new opasm() callback ##abi
* ABI break for all anal plugins
2022-01-09 22:55:34 +01:00
Sergi Àlvarez i Capilla
ab1e0de94c Remove asm.hexagon, anal one is enough ##refactor 2022-01-07 03:24:07 +01:00
Lazula
a661057c7f Update doc files for rpm dist 2021-12-30 10:29:50 +01:00
junchao-loongson
efd05bc7e9
Add support for the new loongarch architecture ##analysis
* Disasm, emulation, analysis and ELF support updated
2021-12-23 12:37:29 +01:00
pancake
bdb9b52fcb Initial import of the v850.np plugin ##disasm 2021-12-20 23:29:50 +01:00
pancake
681323267d
Refactor, improve and move chip8 support out of libr/asm ##asm 2021-12-17 11:21:52 +01:00
pancake
9986b6e464
Remove asm.ebc and merge disasm into the anal ##refactor 2021-12-16 18:27:45 +01:00
pancake
e6f2cd0b2a
Remove trailing spaces (#19460)
$ git grep ' $' | grep -v ^test/ | cut -d : -f 1 | sort -u > /tmp/trailing
$ for a in `cat /tmp/trailing` ; do sed -i -e 's/ *$//' $a ; done
2021-12-02 17:39:59 +01:00
condret
67db06009f Add jdh-8 asm-plugin template 2021-11-24 19:29:16 +01:00