Commit Graph

2320 Commits

Author SHA1 Message Date
pancake
beaf261fb7 Fix another oobread in the java bin parser 2023-06-18 11:33:16 +02:00
pancake
f6bbef2767 Fix two more oobreads in the java parser 2023-06-17 22:44:23 +02:00
pancake
30c55703ea Fix oobs in the java parser, use RLOG and stop earlier ##crash 2023-06-17 22:33:15 +02:00
pancake
878fb589ab Fix some oobreads in the java and dalvik disassemblers 2023-06-17 19:04:09 +02:00
Luc Tielen
c477dfd7a4
Some more Rm 590 2023-06-12 17:53:18 +02:00
pancake
e56c1ee7fe Fix reading and parsing /proc/pid/maps from remote gdb on android ##debug
* Tested on Android12 / arm64
2023-06-08 11:35:01 +02:00
pancake
d72e6a65ae Fix 1byte oobread bug in the java decoder spotted by arch 2023-06-07 13:09:41 +02:00
Luc Tielen
6799fa41af Fix undefined behavior when reading java uints ##shlr 2023-06-05 14:26:41 +02:00
pancake
eb6f28b174 Filter out the java symbols that shouldnt be public in abidiff 2023-06-04 09:51:31 +02:00
pancake
b0b1a49eb7
Update capstone to fix arm64/cr0 bug and better ppc 2023-05-29 17:39:26 +02:00
Luc Tielen
99c43664f9 Move .inc files to .inc.c for editor support ##main 2023-05-23 20:05:17 +02:00
pancake
f500fbe771 Update r2papi.ts 0.1.1 ##lang 2023-05-18 02:44:05 +02:00
pancake
690ece1508 Show capstone version in r2 -v ##shell 2023-05-16 16:37:19 +02:00
pancake
4c6d3bdd49
Update to the latest capstone for new sh and tricore ##arch 2023-05-16 11:34:10 +02:00
pancake
95b6db1799 Update SDB to fix a wrong guard 2023-05-16 06:34:37 +02:00
pancake
4573e545fd Add r2bolt webui PoC ##webui 2023-05-04 10:34:04 +02:00
pancake
fc7dfac27c
Update SDB to the latest (#21683) 2023-05-02 21:58:17 +02:00
pancake
791545c474 Fix 64bit column register listing glitch ##debug 2023-05-02 13:10:36 +02:00
pancake
b13b3548c7
Update to the latest wasi-sdk-20 ##build 2023-05-02 11:12:45 +02:00
pancake
235daf3799 Track recursivity calls in the HFS parser to prevent stack exhaution ##crash 2023-05-02 10:50:29 +02:00
pancake
25d38bb99f Add test and fix oobread in the hfs parser ##fs 2023-04-25 20:06:28 +02:00
Ildar
6e70a4c79e Replace strtok by thread-safe r_str_tok_r 2023-04-22 20:52:23 +02:00
pancake
a309460b2e Fix division by zero in the HFS parser ##crash 2023-04-20 15:56:11 +02:00
pancake
92dd4ac507 Fix oobread segfault in the grub's HFS parser ##crash
* Reproducer: d1193639-a30b-4b35-abf5-6ded4a8a396f
2023-04-19 21:32:35 +02:00
pancake
5e4a86f564 Fix ininite loop in the ext2 grub code (DDoS) ##crash 2023-04-19 19:40:49 +02:00
Ildar Sadykov
2874ef7125
Implement r_str_tok_r without breaking abi
* reduce the strtok usage
2023-04-17 00:52:31 +02:00
pancake
277e0aa606 Fix #21559 - k&r syntax is deprecated for c2x compat reasons 2023-04-12 11:56:24 +02:00
pancake
ce02212bfe Migrate the sparc.gnu plugin ##arch 2023-04-09 01:48:18 +02:00
pancake
bed9f722b3 Fix uninitialized oobread in the elf parser 2023-03-28 22:57:33 +02:00
pancake
a215f295a8 Migrate the pdp11 plugin ##arch 2023-03-28 15:42:28 +02:00
pancake
71440e8264 Update capstone 2023-03-22 06:57:52 +01:00
Mewt R
d28be65647 meson support for smallz4, relates to #19849 ##build 2023-03-18 19:06:34 +01:00
MewtR
b06cfb30d8
Use Smallz4 instead of liblz4 which is optional ##build
* Initial smallz4 support, related to #19849
* Patch smallz4 to return -1 on error (as opposed to just exit)
* Add new function 'unlz4Block_userPtr' that can decompress an lz4 block
* New '--with-smallz4' flag to compile and use smallz4 instead of lz4
* Reuse the new unlz4Block_userPtr function to remove duplicate code from unlz4_userPtr in smallz4
* smallz4: remove patch, format small4cat.c properly
2023-03-15 15:29:54 +01:00
pancake
09169f97f7 Move the tarball distribution code into dist/tarball ##ci 2023-03-15 12:03:21 +01:00
pancake
451f02f456 Update to the latest capstone for SH and arm64 improvements ##arch 2023-03-09 13:19:34 +01:00
pancake
2bea582527 Fix #21439 - Fix missaligned read in the hfs parser 2023-03-08 12:34:49 +01:00
pancake
1d394c3839 Fix sign warnings in the quickjs code 2023-03-02 20:55:29 +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
35c591c625 Fix #21287 - compilation with .c in path ##build 2023-02-20 22:42:26 +01:00
Mewt R
ad505cfe7b Don't recreate libcapstone.a if it's already there 2023-02-19 03:26:12 +01:00
Mohamed Lemine Ould El-Hadj
874a2813ab Fix 'no rule to make libcapstone.a' error ##build 2023-02-12 06:00:59 +01:00
pancake
56379ce713 Fixes for the offline tarball generation ##build 2023-01-23 18:01:07 +01:00
pancake
1ec8c152a2 Do not depend on strcasecmp in libzip, build fail on Centos7 ##build 2023-01-22 16:03:19 +01:00
pancake
fd4bbe063b Disable stack overflow protection in quickjs for asan builds 2023-01-21 02:34:12 +01:00
Vitaly Bogdanov
8bd67c93a1 Add A0 register into MIPS register profiles
A0 register is required to successfully apply the profile.
2023-01-17 13:48:52 +01:00
Vitaly Bogdanov
7f101ba546 Add required A0 register into x86 register profile provided by GDB ##debug 2023-01-16 18:34:18 +01:00
Vitaly Bogdanov
77c19aa18d Use proper type for the XMM register inside profile recieved ##debug 2023-01-16 18:33:52 +01:00
pancake
4ea4c22923 Finish the CONFIG_NOABORT patch for quickjs 2023-01-16 11:32:42 +01:00
pancake
ca6ece2aba Add QJS_NOABORT option to avoid aborts ##qjs 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
db0033a4e7 Update r2papi-ts 0.0.23 2023-01-09 00:53:50 +01:00
Vitaly Bogdanov
88bdb74385 Mark libgdbr_t.server_debug field as deprecated 2023-01-08 22:54:39 +01:00
Vitaly Bogdanov
e433acc266 Remove libgdbr_t.server_debug flag and =g! command
After replacing eprintf by R_LOG_ calls one can enable GDB server
packets logging using `e log.level=5` command.
2023-01-08 20:07:38 +01:00
Vitaly Bogdanov
159e7d922a Replace eprintf by R_LOG_ calls inside GDB module 2023-01-08 20:07:38 +01:00
pancake
aa63e120b2 Enable stack overflow check when recursive calls ##js
* `""js var a = foo; function foo() { a(); } a();`
2023-01-02 01:57:14 +01:00
pancake
695fe0831e Bump for r2papi-0.0.22 2023-01-01 18:12:40 +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
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
nmeum
cabba7329b
meson: Install various missing files ##build
While switching our Alpine Linux radare2 package from the GNU autotools
build system to the meson build system I noticed that the meson build
system doesn't install several files which were previously installed by
the GNU autotools buildsystem. This patch adds the missing files to the
corresponding meson.build files.
2022-12-28 13:05:46 +01:00
pancake
bf8d32fafb
Fix undefined behaviour in quickjs when casting double to int64 ##js (#21208) 2022-12-28 10:56:56 +01:00
pancake
c78a00aa01 Fix undefined behaviour in double->int cast ##js
* Dim the double value to MAX/MIN_INT32
2022-12-27 18:21:59 +01:00
pancake
4f5114f0ef Unsign the shift 2022-12-27 18:08:45 +01:00
pancake
94eca6218a Fix runtime assert when shifting int beyond its limits in qjs 2022-12-27 12:26:03 +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
9fcd0ef668 Add the ability to run qjs scripts with r2 -je ##shell 2022-12-23 13:09:46 +01:00
pancake
e8a86a28e4 Add proper warning when building libbochs on 64bit 2022-12-23 12:14:14 +01:00
pancake
7caa95151a Fix infinite loop in the qjs repl 2022-12-22 11:56:20 +01:00
pancake
9d657a1472 Implement {ctz|clz}{32|64} RNum ##api 2022-12-19 00:25:06 +01:00
pancake
225963d5f2 Enable BigNum in qjs ##lang 2022-12-19 00:25:06 +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
b5cbbbc55f Fix another UB bug in quickjs 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
e04ca11b98 Fix pcc trifids confussion issue ##print 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
e9faffdd0e Remove unnecessary file from qjs 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
78a26e15fe Double lowerdash defines should be defined only by the compiler ##build 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
77efdaca74
Fix Cydia and meson build 2022-12-08 17:21:24 +01:00
pancake
52efddb2c6 Upgrade to the latest capstone, with fixes for arm64 and riscv 2022-12-08 13:56:14 +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
590208e26a Update SDB from git 2022-11-23 11:22:43 +01:00
pancake
aa536ce554 Speedup tcc builds by not using -g ##build 2022-11-23 11:22:43 +01:00
pancake
f09557c7f8
Fix #14540 - klass->super must be an RList instead of char* ##bin 2022-11-21 19:26:29 +01:00
pancake
a79add6dff
Update sdb to remove double include paths ##build
* Updated pkg-config paths
2022-11-19 01:05:18 +01:00
pancake
46e25f8844 Remove anal.malbolge and fix CI r_esil issues ##arch 2022-11-13 22:38:58 +01:00
pancake
fc63211df4 Fix capstone headsup 2022-11-11 17:44:15 +01:00
Alex Bender
e1fbd9b24d
Remove eprintf calls in favor of R_LOG ##api 2022-11-10 13:44:57 +01:00
pancake
7652642373
Deprecate r_str_dup() - related to #20959 ##api 2022-11-07 17:31:30 +01:00
pancake
b5d9ee2342 Update the capstone4 support to 4.0.2 ##build 2022-11-06 18:14:46 +01:00
Mohamed Lemine Ould El-Hadj
33303814c1 Git fetch if we don't have the correct capstone commit locally 2022-11-06 17:24:21 +01:00
pancake
8620742aa0 Use latest capstone from the next branch 2022-11-03 17:59:48 +01:00
Mohamed Lemine Ould El-Hadj
8046def6b1 Sync capstone if not at correct commit 2022-11-03 08:02:27 +01:00
pancake
a5145252d2 Add semicolon to fix some copypaste bugs and update sdb 2022-11-02 22:03:45 +01:00
pancake
53e908d802
Generalize vector instruction types instead of following intel-specific ##analysis
* MMX -> VEC64
* XMM -> VEC128
* YMM -> VEC256
* ZMM -> VEC512
2022-11-02 14:02:40 +01:00
pancake
9a4fe919c6
Prefer _tostring() instead of _to_string() ##api 2022-10-24 20:59:18 +02:00
pancake
0d3618414a Fix few windows warnings 2022-10-24 17:55:34 +02:00
pancake
4ed98d75c3 Fix more leaks in RAnal and RCore 2022-10-17 01:14:56 +02:00
pancake
053fe8d682 Upgrade capstone and remove the patch 2022-10-13 23:28:30 +02:00
pancake
a06ade1796
Balance spacings in braces ##indent 2022-10-13 21:21:34 +02:00
pancake
88a4c3d5ce Upgrade sdb fixing a buffer underflow in itoa() 2022-10-11 19:42:16 +02:00
pancake
06bfb6abf1 Bump cs5 to support FNOP on m68k ##arch 2022-10-11 18:51:20 +02:00
pancake
afbb7a7b98 Add fix for the invalid free crash in capstone 2022-10-11 18:50:40 +02:00
pancake
62fdc0f0ff
shlr/yxml -> libr/util/rxml - fork the abandoned yxml parser and expose it ##util 2022-10-10 12:33:43 +02:00
pancake
9e13e11c4f Ensure shlr/capstone is up-to-date in sys/install.sh 2022-10-10 11:22:42 +02:00
pancake
d0de591dc7 R_BIN_NM -> R_BIN_LANG ##api 2022-10-07 16:17:28 +02:00
pancake
df32ab437f Add lang field for classes, symbols and methods, expose it via ic ##bin 2022-10-07 16:17:28 +02:00
pancake
f5cda53a1e Use the latest capstone5-next with updated aarch64 support ##arch 2022-10-06 20:32:30 +02:00
pancake
1da9127150
Make RDebug.regRead() and regWrite() return bool ##debug 2022-09-21 12:22:46 +02:00
pancake
2bf0723768 Update sdb to introduce ut64 kv apis 2022-09-19 16:14:35 +02:00
pancake
7020c9425c Fix lgtm tips 2022-09-18 20:41:55 +02:00
pancake
92236e4b1e Update to the latest SDB that's changing the sdb_itoa() signature 2022-09-18 20:38:58 +02:00
pancake
1944e59783 Remove some more r_hash leftovers 2022-09-16 10:46:24 +02:00
pancake
a6e0d6c480 Merge rhash into rcrypto and improve apis ##api
* Update meson and make build systems
* Remove leftovers and unused dependencies
2022-09-15 11:25:40 +02:00
pancake
aadacb2c9c Update sdb fixing windows include issues 2022-08-30 12:30:23 +02:00
pancake
b6e7292019 Enable linting for trailing tabs ##lint 2022-08-22 23:25:40 +02:00
pancake
ab0ecf90c3 Update sdb to fix an uubread in query() 2022-08-19 23:11:47 +02:00
pancake
75172066bd Fix wrong condition recently introduced 2022-08-18 20:40:52 +02:00
pancake
7a35f03471 More source spacing linting 2022-08-18 14:37:29 +02:00
pancake
a538b2b700 Add =0 and =1 lintings 2022-08-18 13:58:40 +02:00
pancake
d6e42b8728
Update zlib from 1.2.9 to 1.2.12
* Fixes a bunch of bugs spotted by coverity as well as other CVEs reported in the last update
2022-08-16 18:00:40 +02:00
pancake
aa990230cc Lint for col0 eprintfs 2022-08-15 18:28:07 +02:00
Paul B Mahol
c79b5f76cf Fix integer overflow in R_ANAL_JAVA_COND_OP 2022-08-07 00:30:05 +02:00
pancake
a66f301d18 Upgrade to the latest capstone-next for ppc purposes ##arch 2022-08-01 19:31:10 +02:00
Richard Patel
dcd740dd53
Refactor a few eprintf to R_LOG_ERROR ##refactor 2022-08-01 00:21:21 +02:00
pancake
fb67f995b7 Revert "Update capstone which improves the PPC support ##arch"
This reverts commit a175015eb3.
2022-07-31 15:29:15 +02:00
pancake
a175015eb3 Update capstone which improves the PPC support ##arch 2022-07-31 14:48:55 +02:00
pancake
d6d14b2a71 Add spacing linting checks for public function signatures 2022-07-27 10:34:24 -04:00
pancake
10a2fc99d8 Remove unnecessary call in libzip 2022-07-15 15:37:31 +02:00
pancake
9388a7d197 Remove duplicated symbol when statically linking the updated libzip 2022-07-15 15:25:01 +02:00
pancake
2b3d0f1f0a
Handle arm64's BTI instruction as a nop ##analysis (#20452)
* Revert "ARM disassembler: don't compute [pc, reg] memory location ##analysis"

This reverts commit 97761f8ef0.
2022-07-15 14:07:21 +02:00
pancake
367f888818
Update the embedded libzip under shlr/zip ##io
* Fix problems with some ZIP files considered corrupted
2022-07-15 12:27:20 +02:00
Sergi Àlvarez i Capilla
ba6c067ccc Update to the latest capstone with fixes for ebpf, tls and arm 2022-07-07 12:40:25 +02:00
pancake
8c80cfe7d9 Fix #20405 - Multiple fixes and improvements in projects ##projects
* io maps are now saved and restored
* add an extra test and review/update others
* Use omu in om* and run o*;om* in P
* Better handling multiple P subcommands and help msg
* Use more R_LOG instead of eprintf
2022-07-05 10:56:04 +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
f71b4b47f9 Upgrade from latest sdb 2022-07-02 22:40:00 +02:00
pancake
ba5847c473 Update the /m webui with fixes for the disasm and search widgets 2022-07-02 19:44:32 +02:00
pancake
595c6bd78c Upgrade to the latest sdb 2022-06-16 18:24:34 +02:00
Richard Patel
5f84a020d7 Add missing Capstone plugins to Meson 2022-06-10 22:37:50 +02:00
Richard Patel
dd7c076bae Fix bpf, evm Meson builds 2022-06-09 19:10:36 +02:00
pancake
8966c99ae7
Farproc and pyvm is 32 bit (#20260) 2022-06-09 17:37:06 +02:00
pancake
41dd134f4b Update to the latest capstone to fix a bug for BPF ##disasm 2022-06-09 15:54:42 +02:00
pancake
475398b88f Fix infinite loop in gdbserver =g ##crash 2022-06-08 20:47:48 +02:00
pancake
4039c23f3e
Cleanup gdb:// uri handling in r2's main.c 2022-06-08 20:18:38 +02:00