* ci: Upgrade to Ubuntu 24.04 (Noble)
* Install clang-format-16 directly from the Noble repo
* Remove redundant gcc 11 ASAN build
* Count `dm` map items more granularly in `dbg_maps` test
* Grep only for exception symbols in `dbg_dmi` test
* Add workaround for `dbg_maps` test
* Mask out different digits in `dbg_dmh` test
* Add workarounds for sprintf false positives
* For now, use `-fno-sanitize=function` with clang asan build
The commit moves the new and legacy search commands to RzShell,
adds more details to the search help,
deletes some undocumented or unnecessary commands and adds the stubs for
the new search handler implementions.
Legacy commands still do their string parsing on arguments and are not touched.
The new searches (string and bytes) ahve their actual implementation in the following commmits.
Renamed and replaced commands:
- Renamed '/' -> '/z'
- Replaced '/e' -> '/z' or '/xr'
- Replaced '/w' - All Unicode is searched now properly with '/z'.
Removed commands:
- '/!' - Because the command modifiers are not properly handled in RzShell yet and the advantage of this one is dubious.
- '/f' - Modifiers are obsolete, because search is dispatched into threads.
- '/b' - Modifiers are obsolete, because search is dispatched into threads.
- '/+' - Because no idea what it does. Seems not particular useful.
Part 5/9. Likely won't build in between parts.
Co-authored-by: wargio <deroad@kumo.xn--q9jyb4c>
This commit adds several improvements, updates and fixes to Unicode related logic.
- Update Unicode tables to version 16.
- Escaped strings now escape valid Unicode code points to /Uhhhhhh and invalid code points to /xhh.
- Generally applies RzStrEscOptions way more consistently. The legacy escape is still used at some places though.
- Fix inconsistencies in Unicode decoders/encoders and checkers. They now either return 0 on an invalid decode or the number of bytes the code point requires.
- Add many unit tests for Unicode related logic.
- Add helpers to check code points.
Part 2/9. Likely won't build in between parts.
Co-authored-by: wargio <deroad@kumo.xn--q9jyb4c>
* Added a CI-task to check if rizin could be used as subproject
* Fixed some new global-arguments in meson-build
Co-authored-by: amibranch <amibranch@users.noreply.github.com>
* Use pre-v5 enum names which are now supported by compatibility macros.
* Bump CS version to newest next
* Remove Capstone v6 job until v6 patch release is out.
* Check for support of enum compare/conversion warnings.
* Bumps Capstone version to newest Capstone next (beyond first v6-Alpha1).
* Fixes leaks
* Fixes build and change to AArch64 and SystemZ compatibility headers.
* Marks M68k test as broken (see commit message).
* Fix AArch64 and SystemZ tests
* Handle op.size == 0 for x86 IL ops
The Thread Sanitizer of ASAN doesn't seem to support
randomized offsets from the VMA base address (`vm.mmap_rnd_bits`)
if they are larger than 28 bits.
This leads to ASAN compiled binaries to crash or endless loop
with a `AddressSanitizer:DEADLYSIGNAL` before main is reached.
Reference issues:
https://github.com/google/sanitizers/issues/1716https://github.com/google/sanitizers/issues/1724