Commit Graph

314 Commits

Author SHA1 Message Date
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
pancake
8ae0aa38c8
Fix wasi builds and update wapm package in the new dist/wapm ##build 2021-11-08 10:45:35 +01:00
pancake
45437b6ad5
Add termux-specific plugins configuration file (#19305) 2021-10-25 00:21:17 +02:00
Jose Antonio Romero
082ded9571 Add MSX rom/bin parser plugin and test ##bin 2021-10-20 11:55:50 +02:00
pancake
3548e2e8a4 Final mingw fixes 2021-10-19 12:52:00 +02:00
pancake
58312182e8
Add the first multiarch assembler plugin: vasm ##asm 2021-10-12 21:49:11 +02:00
pancake
ba7ac2b853
Add support for the ALPHA disassembler ##disasm 2021-10-01 19:16:03 +02:00
pancake
4a4946cd89
Initial implementation of the HUNK file parser ##bin 2021-09-29 12:34:44 +02:00
pancake
e3e64df6f3
Add PDP-11 disassembler support from binutils ##disasm (#19141) 2021-09-27 14:22:22 +02:00
Sylvain Pelissier
76807f588e
Add AES Key Wrap Algorithm ##crypto 2021-09-25 06:53:57 +02:00
pancake
84e6cc6a21 Release 5.4.2 2021-09-20 06:46:21 +02:00
pancake
4d2be3830f
Initial import of the isotp:// plugin ##io 2021-09-16 12:53:23 +02:00
pancake
3817e5ebf7 Add vinix plugin configuration 2021-09-11 12:46:06 +02:00
pancake
6ef5e4460a Lowercase sections are no longer a thing in Cydia 2021-08-04 23:26:43 +02:00
pancake
22a15cb510 Add Author in the Cydia package 2021-08-04 17:48:04 +02:00
pancake
5399c90173
Initial support for the TIC-80 Fantasy Computer cartridges ##bin 2021-07-31 02:52:26 +02:00
pancake
6f10062f0c
Improve the macOS packaging scripts ##build 2021-07-28 11:56:57 +02:00
Maijin
f53208e6f1 Import radare2-win-installer files into dist/windows ##build
* Taken from https://github.com/radareorg/radare2-win-installer
2021-07-25 10:55:35 +02:00
pancake
3fae20caf7
Use v35 in the nocs builds (#18907) 2021-07-16 21:54:10 +02:00
pancake
d1d9f7f774
Initial import of the arm64v35 disassembler and analysis plugins ##anal (#18753) 2021-07-15 12:08:41 +02:00
pancake
2e417ee938
Initial support for capstone-less compilations ##build 2021-06-21 17:48:00 +02:00
pancake
7c14bac05b
Add initial support for building r2 on WASI ##build 2021-06-20 17:14:43 +02:00
pancake
d6d0eff78b Remove GNU plugins from nogpl.cfg 2021-06-20 01:24:58 +02:00
pancake
8503fec567
Fix macos packaging in the CI (#18827) 2021-06-11 00:16:53 +02:00
Sergi Àlvarez i Capilla
40ae0fa7d0 Fix CI badge in the readme 2021-05-31 01:16:40 +02:00
pancake
3db250f73a
Add initial toy IBM S390 Object File Format parser ##bin (#18747) 2021-05-24 21:17:13 +02:00
pancake
7de0a602bf
Implement socket:// plugin, inspired by radare1 ##io (#18740) 2021-05-24 14:16:23 +02:00
pancake
6f0dd19157
Rename tcp:// to tcp-slurp:// and improve help message ##io (#18735) 2021-05-23 21:11:39 +02:00
Murphy
fb141bdb0d
Add WAD file parsing (#18659) ##bin 2021-05-18 18:06:40 +02:00
pancake
162e223028
Rename sysz to s390 and add the s390.gnu plugin from binutils 2.36 ##asm 2021-05-04 04:01:22 +02:00
pancake
7f5cab66d6
Import @siguza's arm64 xref finder ##search (#18572)
* Support finding all xrefs
* For now it's just a core plugin named `sixref` (as in siguza's xref)
* Yes. it's a very bad name, but it works, and its damn fast.
* sixref is arm64-specific
* Benchmarks show 0.004s (sixref) vs 0.8s (capstone)

Co-authored-by: pancake <pancake@nopcode.org>
2021-04-11 13:35:38 +02:00
pancake
bcd9e0aea0
Add the m68k.gnu disassembler plugin ##disasm 2021-04-04 18:07:26 +02:00
pancake
59ef16fd3b Add support to the V programming language for scripting ##lang
* Code taken back from radare2-rlang
2021-03-18 17:49:33 +01:00
pancake
73f220f22d Update doc/license for more clarifications ##build
* Orphaned shlr/arm/omap3430 script moved to extras
* Unified json format for r2 -Lj
* Update QNX io plugin to GPL until clarified with the author
2021-03-17 12:56:38 +01:00
pancake
2c207c534a Fix Cydia - Disable AVR plugin ##build 2021-01-25 00:18:23 +01:00
pancake
cd6a439151
Add support for RAnal.ESIL plugins ##esil (#18206) 2021-01-24 16:39:45 +01:00
pancake
0dbc4ee537 Add missing files and remaining patches from import 2021-01-19 05:37:17 +01:00
pancake
ccf5e66d26 Copy generate package after compilation in dist/macos 2021-01-16 04:23:54 +01:00
pancake
1184610971
Fix the CI badge and fully rewrite all the workflows to make sense ##build
* Windows, Linux, Static, macOS, Android, iOS builds published for every commit
* Kept coverage, coverity, fuzzing tests, lgtm and -Werror jobs
* Kill the continuos, the over-engineered matrix and other empty or unnecessary tasks (250 vs 900LOC)
* Jobs TODO: fatmac, termux and rpm (centos) packages
2021-01-12 13:41:21 +01:00
pancake
658c6a0918
Create dist/ to hold all the distribution build files ##build (#18131) 2020-12-31 18:57:05 +01:00