Release Notes
Codename: CleanWheat
Version: 6.0.8
Previous: 6.0.7
AbiDiff: 39-54 (15)
Commits: 291
Contributors: 11
curl -Ls https://github.com/radareorg/radare2/releases/download/6.0.8/radare2-6.0.8.tar.xz | tar xJv
radare2-6.0.8/sys/install.shHighlights
More details
Authors
Copilot Francesco Tamagni Ole André Vadla Ravnås Ole André Vadla Ravnås dependabot[bot] pancake pancake pancake potato qz satk0
Changes
abi
- Migrate r_vector to RVec in core, anal, io, and other components
analysis
- Unify redundant state vars in type propagation
- Use faster data structures for caching data for type propagation
- Remove anal.a2f and the a2f core plugin, it's in anal already
- Conver the blaze analysis from core into an analysis plugin
- Make the leading double lowerdash in symbols irrelevant
- Fix aaef corrupting files in write mode by routing ESIL writes to IO overlay
- Fix analysis command plugin listing 'a:?'
- Add test for type propagation after manual aei
- Move and improve type propagation as a plugin
- Compute with memoization the amount of refs in functions
- Fix null asserts in the 'ap' command and handle prelude binmask
- Resolve gp-relative jump tables for MIPS
- Fix function arg name counting
arch
- Fix #25037 - Support to assemble the 'enter' instruction for x86
- Support AT&T syntax in x86 disassembly and ESIL generation
-
- Simplify x86 operand handling by removing find_*op helpers
- Heavily refactor and improve the z80 plugin
- Fix bugs in the z80 assembler and disassembler
- Expose rbin metadata for dotnet in disasm
- Initial support for CIL disassembler and assembler
- Execute delay-slot instructions in branch instructions and fix gp alignment
bin
- Fix support for Java class loading
- Add kernelcache test and simplify rbuf reference issues
- Emit demangled class names even if demangled is disabled
- Remove rvector calls away from the elf
- Use RVec in machos
- Remove globals from the python plugins
- Fix the swift demangling tests with trylib=false
- Discard unaligned strings with bin.str.align option
- Use the arena allocator and fix memory leaks in the dwarf parser
- Fix demangling bombs honoring the maxsymlen option
- Fix xrefs in apk:// rebase getoffset() with RBinFile.getVaddr()
- Implement .types for the PDB plugin
- Fix multidex apk:// rebasing
- Add rbinplugin types (experimentally used only for dotnet)
- Set RBinClass origins where possible
- Add the class origin field
- Fix #24989 - ARM RPI2 PE identification
- Fix leaks, rm globals and other cleanups for PDB
- Improve the objc parser boundary checks, find more refs
- Mark cil methods with anal arch hints
- Improve AARCH64 relocation support for ELF
- Initial working support for .NET PE assemblies
- Implement the RBin.pdb plugin
- Fix partial ARM instructions relocs for ELF
- Properly inform about why an ELF is not stripped
build
- Also use -Oz in sdk-common.sh
- Omit third-party asserts during SDK builds
- Build SDKs without runtime checks
- Update the rpm package
- Build xcframework with frameworks
- Fix libr.dylib exports on Apple OSes
- Fix and tune the xcframework sdk
- Improvements on the SDK compilation for apple targets
- Fix sys/install.sh for busybox environments
ci
- Build less wasis in PRs
- Use ./configure -qV instead of sys/version.py
- Add XCFramework builds in the release pipelines
- Switch to macos15 because older ci runners are not available
cons
- Make the bluy theme really bluish
- Refresh palete when needed only, fix 'ec' calls from RCore.cmdStr
- Better color limit checks with TERM
- Respect the TERM envvar, only for colors for now
- Reset command switch the terminal mode to ASCII
core
- Improve abiversion warning messages
crash
- Fix uaf bug in apple kernel/dyld-caches spotted by scan cov
- Fix off by one write in the set regprofile function
- Fix oobread in dmh with glibc and uaf in magic command
- Fix UAF in the pdb deinit process
- Fix a couple of recent integer overflows in PE
- Fix oobwrite segfault in dotnet parser
- Fix oobwrite in r_strbuf_append_n
- Dont depend on global cons instance for win_is_vtcompat
- Avoid rbinfiles to UAF if the rbin plugin associated is unloaded
- Fix oobread crash in dotnet parser
- Fix null deref in the p9 parser
- Check for abiversion before loading plugins
- Fix buffer overflow in PE parsing imports and symbols
- Fix UB overlapped memcpys in iomaps
- Fix infinite loop in the mach0 relocs parser
- Fix near-infinite loop in the objc parser eating lots of memory
- Fix infinite loop in r_core_anal_type_match
- File paths with the curl backend must escaped as TMPDIR poisoned for command injection
- Fix an OOB by one in the rap server and better error checking
- Fix system command injection via RSocket.get/post headers when using curl
- Use RSocket.download from idld to fix command injection
- Check the vec reserve before emplacing it back
debug
- Fix radare2 gdb remote debugging support and add test
- Detect and warn when setting overlapped breakpoints
- Implement 'dga' to coredump all maps
- Fix r_str_scanf parsing bug and dg coredump on linux-x64
disasm
- If arch isvm lower varmin to zero
- Implement the scr.rainwbow.regs option
- Fix scr.color.regs when scr.color.ops is false
- Fix colorized ops with byte colors when scr.color.ops=false
- Add register rainbow coloring support
- Add asm.cmt.strings to disable aop.ptr strings
esil
- Replace chevron operators with LSL, LSR, ASR, ROL
fs
- Sort apfs files by name instead of randomly depending on a hashtable
- Implement support for reading files in apfs mountpoints
- Retrieve the file sizes in the apfs filesystem
- Add support for BSD DiskLabel partitions
- Initial support for the Apple FileSystem
- Add support for APM (PMAP) Apple Classic partitions
- Add support for EBR partitions (keep MBR support)
- Initial support for GPT partition tables
hash
- Fix r_hash_tostring using update/end properly
http
- Add APIs to register sessions
io
- Implement the tap:// io plugin for simh tape images
- Enable rawio by default
- Add support for pipe fifo files with 'r2 <(uname)'
muta
- Port all charsets from r_charset to rmuta via charset plugins
panels
- Fix multiple layout settings
perf
- One more strbuf reserve and unnecessary uses of it
- Reduce strbuf drains by removing the slack area
- Removing pf, pf2 is the new pf
-
- Refactor print formatting to improve handling of structs, arrays and pointers
- Refactor print formatting to improve handling of structs, arrays and pointers
shell
- Implement the @@@m:perm foreach operator
- Fix column width in 'ls'
- Fix column width in 'ls' output
- Load fortune messages from directories
- Fix #24914 - Refactor and improve 'sf' command
- Add support for ${pal:} themed colors in scr.prompt.format
socket
- Handle SOCKET_HTTP_MAX_REDIRECTS in the curl codepath
- Support binary data downloads via RSocket.get
- Implement RSocket.download as a wrapper for get+dump
tests
- Add SKIPONASAN option for r2r to avoid a dmh test to fail
- Display short test paths if possible
- Check and display libr version with r2, r2r and rasm2 are the same bin with libs
tools
- Honor R2_COLOR env var from rabin2
- Implement -hh for rabin2 and rasm2
- Include abiversion in -v and -V
- Add JSON support to rafs2
- Add R2_DOCDIR and R2PM_DOCDIR variables
- Add missing rahash2 in blob/main
- Implement rasm2 -LL to list the parse plugins
- Fix error code for 'rasm2 -a invalid nop'
types
- Update scanf and wscanf function signatures to reflect variadic arguments
- Implement typedef union and enum parsing in KVC parser
util
- Fix RBuf design lifetime issues
- Improve r_str_rwx to parse the shar bit
- Sperm bit handled in the helper
- Use logaritmic capacity grows in strbuf
- Continue improving the arena api
visual
- Colorize perm field in iS, dm, dmm and om
- Some better organization sub-visual modes (TAB)
- Add scr.vprompt.format
wasm
- Update to use the latest wasi-sdk-29.0
- Add wasi-browser using wasm-imports