321 Commits

Author SHA1 Message Date
Lazula
06a8789780
Remove all char* casts in free ##cleanup
* Fix dwarf demangle logic
* dwarf_process.c * type.c * pyc_dis.c * dex.c
* emit_arm.c * qjs_core.c * axml.c * engine.c
* cconfig.c * core.c * asn1_str.c
2023-03-09 18:40:24 +01:00
pancake
b87dfa4585 Run the pending jobs in the qjs repl and expose r2pipe module ##lang 2023-03-02 13:10:11 +01:00
pancake
cc16725dec Add fake 'r2papi' module for r2frida-compile scripts ##lang 2023-03-01 10:34:05 +01:00
pancake
2b34da70fa Implement ESM module loader for the QJS runtime ##lang
* Supports files generated with frida-compile
* Use R_LOG for qjs error messages
2023-02-28 19:33:20 +01:00
pancake
b9ebcd0610
Cleanup some lines in the PIC and lang.qjs.arch plugins 2023-02-28 16:06:17 +01:00
pancake
336b86914e
Initial support for r_arch plugins via qjs ##lang 2023-02-27 12:23:48 +01:00
pancake
6562542998 Remove some unsafe sprintf/strcpy 2023-02-20 23:20:53 +01:00
pancake
960acc5405 Fix the wasi build 2023-02-10 02:54:20 +01:00
pancake
d1a557e3ce Add support for NIM scripting on top of the QJS engine ##lang 2023-02-09 17:48:01 +01:00
pancake
3adef7e059
Avoid the use of sprintf() 2023-01-25 21:39:22 +01:00
pancake
626fffa44a Fix null deref in the poke scripting support 2023-01-19 16:47:45 +01:00
pancake
1deedbaa5a Initial skeleton integration with GNU/Poke ##shell 2023-01-19 11:40:12 +01:00
pancake
c1846af09e Fix linking issues after the libs reordering 2023-01-11 00:18:13 +01:00
pancake
49d609c86b Update to the latest tinycc in the CI ##build 2023-01-11 00:18:13 +01:00
pancake
c3a1fe170d Initial implementation of lang.s assembly scripting ##lang 2023-01-11 00:18:13 +01:00
pancake
1546936a7c R_TH_LOCAL two globals in RLang.c ##lang 2023-01-11 00:18:13 +01:00
pancake
12c6271e7e Reestructure lib dependencies, add lang.asm plugin ##lang 2023-01-11 00:18:13 +01:00
pancake
db0033a4e7 Update r2papi-ts 0.0.23 2023-01-09 00:53:50 +01:00
pancake
fff7d4b1d0 Add experimental r2.cmd0 and r2.call0 for qjs ##js 2023-01-05 12:19:51 +01:00
pancake
a6bb0b6c15 Upgrade to r2papi-0.0.20 2022-12-30 11:09:01 +01:00
pancake
658cfd6566 Update r2papi-0.0.18 with many new apis 2022-12-29 23:49:32 +01:00
pancake
739b297a5d Improve error messages in the qjs repl ##js 2022-12-29 23:15:11 +01:00
pancake
b11fecf7e8 Rename qjs's dir function to dump ##js 2022-12-29 22:35:42 +01:00
pancake
f27b8d9bfb Support loading/unloading multiple QJS plugins ##js
* This is a hacky and experimental feature, without
* breaking the ABI for all the Core plugins this is
* not possible to be done properly, so i'll keep it
* until 5.9, also rlib api is also unable to unload
* plugins, which will require more breaking changes
2022-12-29 21:29:16 +01:00
pancake
7fd869d05e Update typescript compiler and move r2plugin into r2 ##js
* Update to the latest r2papi0.0.14 adds wip esil apis
* Support more js profiles with a global exports var
2022-12-29 14:49:17 +01:00
pancake
77c3797c71 Extra checks and enforce the singleton core plugin ##js 2022-12-27 13:35:02 +01:00
pancake
15a92dbd0a Improve typescript entrypoint logic detection ##js 2022-12-27 12:48:38 +01:00
pancake
dd8a58a07d Initial support for javascript core plugins ##js 2022-12-27 12:03:02 +01:00
pancake
08a9b55ba3 Upgrade r2papi-ts from 0.0.4 to 0.0.10 ##js 2022-12-26 11:33:40 +01:00
pancake
7a879ce490 Support typescript Main namespace and pass --allowJs ##js 2022-12-26 11:32:26 +01:00
pancake
7caa95151a Fix infinite loop in the qjs repl 2022-12-22 11:56:20 +01:00
pancake
cb764ac449 Make r2 -j work as a hashbang handler for qjs ##lang
* Fix "script not found" issue, solve command injection bugs
2022-12-22 11:56:20 +01:00
pancake
4a8f807f72 Add ve command to set fg/bg colors for current panel ##panels 2022-12-18 22:34:21 +01:00
pancake
4378d2de2e Use r2papi 0.0.4 with base64 and R2Api is now known as R2Papi ##lang 2022-12-13 13:21:52 +01:00
pancake
6d5b1a4dbe Add requirejs, simplify compilation and add js_ prefix to all the c files ##lang 2022-12-13 09:46:51 +01:00
pancake
a4ed62b7d2 Add typescript support ##lang 2022-12-13 09:46:51 +01:00
pancake
3508e31b2d Minor improvements for js: with r2.call() and r2.cmdj ##lang 2022-12-12 13:08:33 +01:00
pancake
73d0d181e2
Enable Bignum support to the QJS interpreter ##lang 2022-12-12 12:04:18 +01:00
pancake
843da0c74f Import the alpha r2papi 0.0.2 api for qjs ##lang 2022-12-11 04:26:17 +01:00
pancake
a6a0b41bac Integrate the qjs repl into the js: command ##lang 2022-12-11 04:26:17 +01:00
pancake
9a9177736d Initial import of the interactive QJS repl ##lang 2022-12-11 04:26:17 +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
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
71c7a53661 Fix null deref in rlang ##lang 2022-12-08 18:57:12 +01:00
pancake
3b033951be Fix rlang build on windows 2022-12-02 15:56:16 +01:00
pancake
82c25407af Refactor RLang api to use the new design ##api 2022-12-02 11:59:33 +01:00
pancake
90f419b4d3 Remove path limit in rust rlang scripts 2022-11-26 03:46:58 +01:00
pancake
a935629aae Implement Ll, Llq and #!?q commands for better rlang listing ##shell 2022-11-25 00:19:14 +01:00
pancake
c67925ebad Add .author field in all the RLang plugins ##api 2022-09-14 17:53:13 +02:00