v4.0 : Codename Kràmpack - vifino edition
Release Notes
Version: 4.0.0
From: 3.9.0
To: 4.0.0
Commits: 299
Contributors: 48
Changes
anal
- Bring back the MASK_DISASM because not all nanal plugins support it yet ##anal
- Select default var type based on its size (#15352)
- Fix #15325 - Improve af- like its done in Vdu
- Deprecate anal.jmp.eob /refs #13482
- Fix #15117 - honor asm.var.sub in ao/aoj
- Fix #15315 - Honor RAnalOp.disp in
aar
andao
- Update 8051 plugin (#15321)
- Avoid reloading of cc sdb - huge speedup (#15306)
- Implement ESIL for arm64 UBFX
- Make RAnalFunction.cc come from RAnal String Pool
- Deprecate the use of anal plugins that doesnt handle mask.disasm
- Add jumptable support for main() in bins/elf/analysis/ls-alxchk (#15266)
- Add jumptable support for main() in bins/elf/ls.odd (#15233)
- add afoj and afdj (#15254)
- Fix #15235 - push [mem] not handled in /r
- Add initial reg profile for sysz arch
- Don't propagate noret to fcn if fcn jmps outside itself (#15190)
- Fix #15004: Make meta.min rbtree more robust (#15141)
- Fix memleak in r_core_anal_propagate_noreturn()
- Minor speedup/cleanup/refactor of the RAnal
- Implement ESIL control-flow-graph and further dfg analysis
- Add anal.delay to disable delay slot analysis for testing
- Fix pc-rel movs in sh's esil
- Delay execution debug messages are now available via anal.verbose
- Fix #15073: Disambiguate using fcn addr also in meta.min rbtree (#15077)
api
- Add r_strbuf_copy API (#15186)
asm
- Fix post-indexed memory access for str instructions on ARM (#15298)
- Fix #15302 [rasm2/armass] Correctly propagate errors from thumb_assemble (#15303)
- Add additional [indirect] access syntax for 8051 (#15272)
- Fix #10651 sub sp, sp, 0x1000 not correctly assembled for ARM (#15187)
- Fix #15198 (#15199) arm64 assembler const value
- Add 8051 assembler plugin (#15189)
- Z80's LD opcodes assembly (#15185)
- Fix parsing of floating point instructions in x86_64 assembler (#15174)
- Fix x86 assembler output for some memory loads (#15068)
bin
- On AArch64 there is a new special symbol $x (#15362)
- Fix #15152 - Support old Java attribute format (#15317)
- Simplify r_bin_open_io function (#15307)
- Support > 4GB ELF files
- Add support for RTable.query in i
- Fix #15132: Integrate table to iS,ia,ir,iz,is (RBin info) based commands (#15159)
- Implement support for the RISCV PLT ELF relocs
- Fixes for MSVC demangling (#15210)
- Format the .rela. sections in ELF
- Add NES ROM mirroring map
build
- sys/asan.sh: Use -fsanitize=... instead of -lasan when linking (#15375)
- Link sdb fully into r_util in meson (#15338)
- Fix #15296 - *BSD builds (#15309)
- Fix macOS build with latest XCode
- Add MSVC 2019 for AppVeyor
-
- Try MSVC 2019 for AppVeyor
- Set rpath if non-Windows Meson shared
- Debian package fixes (#15081)
cons
- Fix function key handling in visual/panels
- For utf-8 locale, check LC_ALL, LC_CTYPE and LANG in sequence instead (#15326)
- Also use LANG env var to check for UTF-8 output support (#15257)
- Move UTF-8 setting logic to scr.utf8 config callback on Windows (#15273)
- Implement 'str' operation in RTable queries
core
- Fix #14247 - fn.j/fnj. show all flags in current offset, not just one
- Few compiler watning fixes here and there
- Fix #15114 - Implement r_sys_info() and
uname
- Add kitty clippy replacement :3 (#15232)
- Add possibility to specify time zone with rax2 -t (#15180)
- Implement cj command using the PJ api (#15168)
- Add support for the V programming language
- Fix #15134 - Support octal numbers like 0o666
- Implement function-based plugin loading method
- Add omt and help message for RTableQuery + add format column api
- Move Lib already loaded check before dlopen Call (#15075)
- Replace r_str_const* with RStrConstPool (#15300)
- Kill r_sys_get_osinfo () (#15346) ##core
debug
- Use RTable for Windows heap info output (#15368)
- Add support for setting xmm registers on linux (#15365)
- Fixed continue not being associated with the current thread in unix
- Added a way to break while in dbg_wait (continue, step etc)
- Fixed dpk
- Fixed opcodes not being associated with the current thread in gdbr (#15358)
- Fix
drm[bwdq]
command, add xmm0h/l and xmm8-15 registers (#15354) - Fix the way linux debugging options are set (#15323)
- r_reg_get_pack/r_reg_set_pack are not able to deal with 128 packbits
- Added support to thread switching in linux and fix r_debug_select
- Fixed ptrace 'Operation not permitted' errors (#15287)
- Fix debugger build for native GNU/Linux on RISC-V
- Fix incomplete drr/drrj formatting when r_core_anal_hasrefs fails (#15277)
- Added "dptj" and "dptj " (#15259)
- Enhance
drm
command, adddrm xmm0
functionality (#15214) - Fix
drf
output formatting - Implementing debug info per pid on NetBSD
- Using unused map debug field on macOS
- Rebase fcn/bbs, flags , comments, meta, refs when ood
- Fix issues in windows thread switching (#15366) ##debug
diff
- Implement radiff2 -X for hexII diffing
- Fix #14845: Support radare2_rc in radiff2 for graphs (#15078)
disasm
- Better pdi output when Cd is involved
- Implement 'pdt' - print disasm in table, supports queries
- Make asm.fcnsig more compact
- Do not resolve the strings pointed by ADRP on arm64
- Improve (change) sh4 disasm (lowercase regs...)
emu
- anal_x86_cs fix esil expr for neg instruction (#15252)
- Fix #15246 - Honor the 'u' suffix in PPC instructions in ESIL
esil
- Fix #15297 - Update ESIL help message
- Improve registers handling in ESIL dfg
- Simplify ESIL code for ARM str instructions
- Add a parameter to $s and $o (#15171)
io
- Setting the upper address limit for OpenBSD
- Improve omt and implement RTable.filterSum
io_self
- Setting the upper address limit for OpenBSD
json
- Show flagname and realname in json format for fnj and such
- Add current thread field to dptj (#15268)
lang
- Rewrite hashbang command parser, use argc & argv in hashbang (#15188)
panel
- Fix #14857 - Handle 'O' key to rotate asm.pseudo/asm.esil
- Another const pointer to be free fix
- Handle / highlight in panels for zoom and window modes
- Fix const address freeing
- fix #15060 - Add xrefs and xrefs here in visual
- Fix #14559 - Honor scr.fps
panels
- Fix #14857 - Handle 'O' key to rotate asm.pseudo/asm.esil
- Handle / highlight in panels for zoom and window modes
- Fix const address freeing
- fix #15060 - Add xrefs and xrefs here in visual
- Fix #14559 - Honor scr.fps
- Fix #15216 - Implement pcy command to print hexpairs in Yara format
r2pie
- Implement r2pipe_open_dl() to use dlopen/dlsym
rasm2
- Freeing main assembly object
script
- Fix vlang plugin to run scripts and add example
search
- Fix #8575 - Support stdin slurping in rafind2 -
- Add support for hex escaped litterals in regular expressions (#15291)
- Fix RCALL and RJMP in aop and /at
- Refactor Search to use less Global State (#15076)
table
- Add :json,:quiet,strlen,minlen,maxlen,sortlen in table queries
- Integrate table API for p-h (#15083)
util
- Fix rop inline assembly form
visual
- Run .dr* in visual prompt in cfg.debug is set
- Fix for VV going to V (issue 15181) (#15195)
- Fix #14919: truncate long function names in Vv (#14996)
wasm
- Further wasm memory leak fixes
- Memory leak fixes in error code paths
windows
- Print child output in pipe lang plugin
zign
- Integrate types field in zignature operations (#15082)
Thanks to all the contributors
- Anton Kochkov xvilka@gmail.com
- Armin Weihbold koyaan@users.noreply.github.com
- Brandon Lin blin00@gmail.com
- Cyrill Leutwiler bigcyrill@hotmail.com
- David CARLIER devnexen@gmail.com
- Dennis Goodlett dennis+git_swoops@hurricanelabs.com
- Florian Märkl info@florianmaerkl.de
- Francesco Tamagni mrmacete@protonmail.ch
- Fritz Reese fritzoreese@gmail.com
- Giovanni 561184+wargio@users.noreply.github.com
- Gordon M 35108003+gordboy@users.noreply.github.com
- GustavoLCR gugulcr@gmail.com
- Joseph Griego joseph.j.griego@gmail.com
- Khairul Kasmiran kazarmy@gmail.com
- Maijin maijin21@gmail.com
- Paul I pelijah@users.noreply.github.com
- Paweł Łukasik lukasik.pawel+github@gmail.com
- Qian qwu.au0605@gmail.com
- Quim 6136977+quim0@users.noreply.github.com
- Remco Verhoef remco@dutchcoders.io
- Riccardo Schirone sirmy15@gmail.com
- Roman Valls Guimera brainstorm@users.noreply.github.com
- Samuel Hopstock masrepus97@gmail.com
- Sanyam Agrawal 42491578+Sanyam-Agrawal@users.noreply.github.com
- Stefan 8906941+stefansiegfried@users.noreply.github.com
- Stefan Ilic stefan92ff@yandex.com
- Thomas Bailleux zadlg@users.noreply.github.com
- blenk92 30472652+blenk92@users.noreply.github.com
- condret condr3t@protonmail.com
- dav1901 44604348+dav1901@users.noreply.github.com
- dodococo deepakchethan@outlook.com
- dok dokthar@users.noreply.github.com
- fcasal fcasal@users.noreply.github.com
- hmht 55194419+hmht@users.noreply.github.com
- layderv 20249311+layderv@users.noreply.github.com
- lzutao taolzu@gmail.com
- neuracr 26376659+neuracr@users.noreply.github.com
- pancake pancake@nopcode.org
- the-remmer thomasdewaele@gmail.com
- xarkes antide.petit@gmail.com
- yossizap yossizap@gmail.com
- Óscar Carrasco oxcabe@gmail.com