* Wed May 17 2023 Alexander Bergmann <abergmann@suse.com>
- Update to 5.8.6
For details, check full release notes:
https://github.com/radareorg/radare2/releases/tag/5.8.6
- This fixes CVE-2023-1605 (boo#1209686).
* Fri Mar 24 2023 Alexander Bergmann <abergmann@suse.com>
- Fix a denial of service vulnerability via misparses symbol information in
COFF files (boo#1209686, CVE-2023-1605).
+ Add radare2-CVE-2023-1605.patch
* Tue Nov 15 2022 Dominique Leuenberger <dimstar@opensuse.org>
- Update to version 5.7.8 (boo#1201820, CVE-2022-34502):
+ Heap buffer overflow via the function consume_encoded_name_new
+ Significant number of changes and bug fixes since 5.7.0
* Thu Jun 09 2022 Timothy Brown <stimut@gmail.com>
- Update to 5.7.0
* Significant number of changes and bug fixes
* Resolves 38 CVEs
- CVE-2022-0139 - https://bugzilla.opensuse.org/show_bug.cgi?id=1195713
- CVE-2022-0173
- CVE-2022-0419 - https://bugzilla.opensuse.org/show_bug.cgi?id=1195444
- CVE-2022-0476 - https://bugzilla.opensuse.org/show_bug.cgi?id=1196414
- CVE-2022-0518 - https://bugzilla.opensuse.org/show_bug.cgi?id=1195746
- CVE-2022-0519 - https://bugzilla.opensuse.org/show_bug.cgi?id=1195761
- CVE-2022-0520 - https://bugzilla.opensuse.org/show_bug.cgi?id=1195741
- CVE-2022-0521 - https://bugzilla.opensuse.org/show_bug.cgi?id=1195760
- CVE-2022-0522 - https://bugzilla.opensuse.org/show_bug.cgi?id=1195742
- CVE-2022-0523 - https://bugzilla.opensuse.org/show_bug.cgi?id=1195720
- CVE-2022-0559 - https://bugzilla.opensuse.org/show_bug.cgi?id=1196052
- CVE-2022-0676 - https://bugzilla.opensuse.org/show_bug.cgi?id=1196345
- CVE-2022-0695 - https://bugzilla.opensuse.org/show_bug.cgi?id=1196484
- CVE-2022-0712 - https://bugzilla.opensuse.org/show_bug.cgi?id=1196320
- CVE-2022-0713 - https://bugzilla.opensuse.org/show_bug.cgi?id=1196319
- CVE-2022-0849 - https://bugzilla.opensuse.org/show_bug.cgi?id=1196819
- CVE-2022-1031 - https://bugzilla.opensuse.org/show_bug.cgi?id=1197420
- CVE-2022-1052 - https://bugzilla.opensuse.org/show_bug.cgi?id=1197509
- CVE-2022-1061 - https://bugzilla.opensuse.org/show_bug.cgi?id=1197508
- CVE-2022-1207 - https://bugzilla.opensuse.org/show_bug.cgi?id=1197991
- CVE-2022-1237 - https://bugzilla.opensuse.org/show_bug.cgi?id=1198185
- CVE-2022-1238 - https://bugzilla.opensuse.org/show_bug.cgi?id=1198186
- CVE-2022-1240 - https://bugzilla.opensuse.org/show_bug.cgi?id=1198187
- CVE-2022-1244 - https://bugzilla.opensuse.org/show_bug.cgi?id=1198132
- CVE-2022-1283 - https://bugzilla.opensuse.org/show_bug.cgi?id=1198291
- CVE-2022-1284 - https://bugzilla.opensuse.org/show_bug.cgi?id=1198292
- CVE-2022-1296 - https://bugzilla.opensuse.org/show_bug.cgi?id=1198375
- CVE-2022-1297 - https://bugzilla.opensuse.org/show_bug.cgi?id=1198376
- CVE-2022-1382 - https://bugzilla.opensuse.org/show_bug.cgi?id=1198592
- CVE-2022-1383 - https://bugzilla.opensuse.org/show_bug.cgi?id=1198593
- CVE-2022-1437 - https://bugzilla.opensuse.org/show_bug.cgi?id=1198804
- CVE-2022-1444 - https://bugzilla.opensuse.org/show_bug.cgi?id=1198805
- CVE-2022-1451 - https://bugzilla.opensuse.org/show_bug.cgi?id=1198807
- CVE-2022-1452 - https://bugzilla.opensuse.org/show_bug.cgi?id=1198808
- CVE-2022-1649 - https://bugzilla.opensuse.org/show_bug.cgi?id=1199418
- CVE-2022-1714 - https://bugzilla.opensuse.org/show_bug.cgi?id=1199555
- CVE-2022-1809 - https://bugzilla.opensuse.org/show_bug.cgi?id=1199806
- CVE-2022-1899 - https://bugzilla.opensuse.org/show_bug.cgi?id=1199972
- Remove unneeded libewf dependency
* Tue Feb 01 2022 Paolo Stivanin <info@paolostivanin.com>
- Update to 5.5.4:
* New IOBanks APis and commands replacing skyline and making io faster (2-10x)
* Faster analysis, type matching, binary parsing (2-4x)
* [] and =[] esil operations has been removed (size is mandatory)
* Lots of important bugs fixed in bin parsers and disassemblers
* Add support for the latest iOS15 dyld4 Atlas-style cache formats
* Autorename signature matching collisions and faster search
* Add assembler for riscv and disassemblers for PDP11, Alpha64 and armv7.v35
* Improved integration with r2frida remote filesystems
* Cleaning debugger for windows (32 and 64) and macOS makes it more reliable and stable
* Add seven segment printing (?ea for ascii-art text titles)
* Improved xrefs visualization with new axfm and axtm commands
* Add avg command to manage global variables
* The sixref plugin is now easier to use to find xrefs on arm64 code
* Improved multibin (select all bins or one) and multidex support in apk://
* Better build scripts for Windows (add asan and w32 profiles)
* Added armv7.v35 and improves esil emulation with the arm64.v35
* Add more help messages and set scr.prompt.tabhelp true by default
* AES key wrap algorithm support in rahash2
* Fix var serialization issues in debugger reloading (ood) and projects saving (Ps)
* Add Amiga and MSX rom/bin parser plugin and test @romerojoseant @trufae
* Visual slides (r2s) allow interactive content to be used within r2
* Print and convert ternary values back and forth
* Add the vector35 arm64 for analysis, esil and disasm and r2 can be built without capstone
* Improved integration to use r2ghidra analysis and disassemble mainly tested for avr, v850 and arm64
* Fix emulation of several x86 and arm64 instructions, including an scripted way
to import official arm64 instruction descriptions
* Bring back the cmd.pin to instrument the esil emulation when a specific address is hit
* Small steps towards Projects with improved management for version control
* Improved visual and panels with better interactions and fixed glitches
- Remove CVE-2021-3673.patch
* Tue Aug 03 2021 Ferdinand Thiessen <rpm@fthiessen.de>
- Add CVE-2021-3673.patch, fixing CVE-2021-3673 (boo#1189009):
resource exhaustion and DoS
* Sat Jul 10 2021 Ferdinand Thiessen <rpm@fthiessen.de>
- Update to 5.3.1
* Fix CVE-2021-32613: Double free vulnerability in the pyc parse
via a crafted file which can lead to DoS.
* Fix assembling invalid arm64 instructions dont result in invalid
representations
* Add http.basepath to support sub directory handling for proxying
purposes
* Support instruction descriptions when using the r2ghidra
disassembler plugin
* Fix issues and enable the garbage collector when running @vlang scripts
* Fix arm16 ldr post indexing esil expression
* Fix r2pipe regression caused by a change in RCons buffering when
chaining multpile commands
* Support user defined REgg plugins
* Full changes: https://github.com/radareorg/radare2/releases/tag/5.3.0
* Fri Jun 04 2021 Stefan Brüns <stefan.bruens@rwth-aachen.de>
- Install "r2p" multicall symlink as r2pipe, r2p conflicts with
polylib.
* Sun May 30 2021 Stefan Brüns <stefan.bruens@rwth-aachen.de>
- Update to 5.2.1
* See https://github.com/radareorg/radare2/releases/tag/5.2.1
- Packaging changes:
* Use license tag for COPYING/COPYING.LESSER
* Use SPDX 3.0 format for License
* Use system libzip/xxhash/libuv
* Move plugin directory from devel to main package
* Remove broken and no longer relevant rpmlintrc
* Various small cleanups
* Mon Jan 11 2021 Daniel Molkentin <daniel.molkentin@suse.com>
- Update to 5.0.0
* See https://github.com/radareorg/radare2/releases/tag/5.0.0
* Wed Aug 12 2020 Robert Frohl <rfrohl@suse.com>
- Update to 4.5.0
* Analysis
- Initial API for base type kinds (enum, struct, union)
- Rename PowerPC to PPC
- Improve RISC-V analysis for compressed instructions
- Add endbr64 as a function prelude for x86-64 binaries
- Improve BP vars/args detection
- Detect register args used only by callee
- Match args name/types from function definition
- Improve itanium RTTI parsing and vtable search
- Refactor Variables out of SDB
- Implement basic concept of signature bestmatch
* asm
- Add support for WebAssembly SIMD extension
- Boolify r_asm_is_valid and r_asm_set_syntax API
- x86_64/x86_32: Implement assembler endbr32 and endbr64 instructions
- x86_64: Support mov r64, 0xffffffffffffffff
- x86_64: Fix mov r32, -imm32 encoding
- Move inferior GNU Hexagon plugin to extras
- For a complete list of changes see:
https://github.com/radareorg/radare2/releases/tag/4.5.0
https://github.com/radareorg/radare2/releases/tag/4.4.0
* Mon Mar 30 2020 Daniel Molkentin <daniel.molkentin@suse.com>
- Update to 4.3.1
Fix segfault in om= command
Fix dead process issue with ood/doo command
Fix build with ancient capstone3
Fix build with pre-c99 compilers
Some more code cleanups + refactorings
Changes for 4.3.0
anal
Rename the Function Flag on afn (#16078)
Fix 'af' missing lines bug when analyzing in frida://0
Implement function names with dots in signatures
Remove more members from RAnalBlock
Remove prev, jumpbb and failbb from RAnalBlock
Refactor Anal Hints (#15876)
Skip empty esil expressions in 'aeab' to fix partial results issue
Add 'aba' command as an alias for aeab
Fix aeab and add V (values) in aea outputs
Implement aeab command
asm
Fix #13908 - x86 aoj for instruction with hidden operand
Add 'wao jinf' for Dalvik
Determine Gameboy hardware registers in disassembly (#15909)
bin
Add new BIND_OPCODE_THREADED constant for MACHO binaries (arm64e)
Add Windows Crash Dump format support (#16087)
Minor Fixes and Tests for NSO/NRO (#16053)
Fix iS hash outputs (#16044)
Add Authentihash support for PE (#15987)
Fix ELF symbols for names just before the end of strtab
Parse dyldcache local symbols
Fix some out of bound accesses in LE (#15943)
Fix #14325 - Honor segments in DEX files (#15920)
Many FLIRT handling fixes
build
Fix debugger build on Linux/s390x
'sign' as an alias for ios-sign and macos-sign
Build debian package in CI
cons
Fix again the EOL bgcolor issue (and improve scr.html) (#16120)
Implement ecHj to list highlight rules in json format
Fix r_table_tostring for string with ansi escape code (#16069)
Fix #16063 - bgcolor not reset on newlines
Fix ecH- deleting ecHi and deleting meta highlight items
Fix #15359 - Enable key.f# keys to be used in the shell
Improve the gentoo theme
core
tree-sitter: support iter commands (#16111)
Initial implementation of the 'rb' command to rebase all the things
Use state struct and start handling cmd_substition_arg in tree-sitter (#15966)
debug
Use RTable API in r_core_debug_rr (#16066)
Fix show register value in column (#16010)
Add 'dbH' to set hardware breakpoints (#15933)
disasm
Improve ecH (ecH-* dels them all, ecH- doesnt segfault, ecH list)
esil
If esil.addr.stack is mapped find an available one
When esil.stack.addr is -1 set it to the next unallocated address
Code cleanup for r_core_esil_step() (#16017)
graph
Add graph.aeab to show esil stats instead of disasm
json
Fix #15851 /wj without arg produce '\n' (#15885)
panels
Fix a bug on clicking in panels (on Mac and Linux)
projects
Preserve "functions" flagspace when saving projects (#16057)
refactor
Revert "Avoidify the RUtil.strTrim() APIs, rename trimHeadTail() and add asserts in RConfig
Avoidify the RUtil.strTrim() APIs, rename trimHeadTail() and add asserts in RConfig
Fix consecutive call to r_table_sort (#16049)
Kill all globals in rabin2.c
Remove globals from main.r2
Remove globals from rax2
Revert "Avoidify the RUtil.strTrim() APIs, rename trimHeadTail() and add asserts in RConfig"
test
Add tests for RList (set, get, reverse, clone, append, prepend) and remove legacy
Add initial sparc regression tests
Handle ^C in r2r.v and support threads in fuzz tests
r2r.v: Assume BROKEN=1 if not 0 or "" (#15936)
Add Unit Tests to Meson (#15926)
types
Fix tccj, tccl, tcc* output errors and add tests (#15931)
util
Avoidify the strTrim() APIs + cleanup/refactor
Memory leak fix proposal in syscmd_join
visual
Fix #15963 - Handle / in Vx (visual xrefs)
Changes for 4.2.0
anal
Fix #15091 - Make 0 fcnsize warning more meaningful and verbose-only (#15866)
Fix jumptable size #13812 (#15822)
Fix afs not working without rettype
Fix a null deref in fcn_recurse
Remove Custom Analysis for Java (#15817)
Refactor RAnal Basic Blocks and Functions (#15169)
Change RAnalBlock.size to ut64
Make type matching independent of bb list order
Improve the op.type text representation when unhandled modifiers are used
Remove dupped basic block analysis in core (#15714)
asm
'push rip' is not a valid instruction
bin
Improve realname support for symbols (#15702)
Add test for #15727 (smd strings) (#15777)
r_str_unescape: Support all izz esc seqs (#15770)
Force read permissions on all load maps in ELF
Initial implementation of LX/LE file plugin
cons
Implement ar, and dr, commands to list registers in table format
Fix #14424 - Handle ~ operator in the ms shell
Implement r_strbuf_slice and use it in panels to solve a glitch
core
Add ?V0 ?V1 ?V2 - for semver support
Upgrade to acr-1.8.1 to get semver support
Add pkgname in RLibStruct for r2pm on outdated plugins
debug
Added reverse step and continue support to gdbr
Moved drC to drpC for profile comments and added drC for reg comments
Added register specific comment parsing to register profiles
Fix crash caused by rebasing a file without sections
Set cfg.debug to true before running oodf in doof
Fix multithreaded breakpoint behavior in linux
Attach to new linux threads on creation
Fix debugger build on linux-s390x
Always unset bps after continue and step hard
Add detailed location info to dpt using pc instead of path
Add packed sizes to gdb vector registers and improve mapping of target description to r2 regs
Fix drt not printing non 64bit/32bit registers and flags
Refactor breakpoint validation (#15754)
Refactor breakpoint validation
Revert "Validate bp addr on rebase and restore instead of preventing creation
Validate bp addr on rebase and restore instead of preventing creation
Fix hardware bp restoring and fix hwbp repeating errors
Add location in file to linux dpt output
Fix var rebasing by saving regname info
Refactoring ptrace register write for BSD
Implement bsd_thread_list for FreeBSD
Fix reopening of windows debug after detaching not working
Fix windows breakpoint rebasing
Prevent the restoration of disabled breakpoints
diff
Add explicit fingerprint_size to RAnalFunction
Add ccdd command to diff decompiler output of two functions
Add ccdd command to diff using decompiler (experimental)
disasm
Remove realname from strings (#15841)
Show flag realname when finding a function and realname is enabled
Hide flag comments when realname is shown (#15801)
asm.symbol: Improve code/test a bit more (#15798)
asm.symbol: Fix flag name when disasm from non-flag addr with no anal
esil
Add RISC-V 64 word instructions and test (#15742)
Correct RISC-V division and add test (#15712)
io
Fix #15789: Increment offset for reads as well (#15865)
json
Use PJ api in the output of isj and show realname
Fix issues in iCj, drlj and arlj
Fix izzzj json output
Fix gen json dwarf with pj api (#15755)
Fix is.j iEj and iaj json validation issue in r2 -- (#15724)
panels
More fix for resizing issue (#15844)
Performance improvements for the cursor mode
Code clean-up and a little performance improvement for decompiler cache
All the available decompilers outputs will be properly shown with this
Make the decompiler cache work properly
Add H key for cursor mode which works like the one in vim
print
Implemented pmj (#15864)
r_debug
Debug, BSD systems refactoring
search
Add elliptic curve private key search in /cr command (#15761)
izzzj: Add izzj attributes (#15759)
signatures
Apply types on matching zignature data
table
Add f, command to list flags in table format
test
Fix V testsuite build with latest V from git (#15867)
Convert cmd_pd* tests from <<KEYWORD to <<EOF (#15823)
Support extras tests in r2r.v (#15821)
r2r.v, -j 0: Allocate 1 job per test (#15807)
Improve unit test execution using the new V suite and makefiles
Many improvements in the V testsuite (#15722)
tests
r2r.v, -j 0: Allocate 1 job per test (#15807)
util
Fix r_list_set_n() to allow empty element (#15820)
visual
Limit panel tabs to 9 to avoid keybinding and click issues
windows
Fix reading on invalid process memory
- Changes for 4.1.0
anal
Improve SP based variable analysis
Some more helpful messages for anal.verbose
Fix first r_anal_op call after asm.bits change
Improve SP based var analysis
Fix ms cc wrong argument analysis
Fix r_type_del() for typedefs (Fix #15337)
Add base64: for afn
Move the fcn preludes into RAnal and add anal.jmp.tailcall (-1,0,N)
Fix typo in ios-syscalls.txt (#15436)
Initial implementation of afvf - show bp-relative stackvars
Insert arguments into types SDB on function analysis
arch
Add support for or1k (OpenRISC) disasm+analysis (#15515)
asm
Fix ignored asm.bits settings because of RBin overrides
Fix for #15459 - Also set the first operant to the right value on a mov from pointer with offset
Add ARM strd support (#15388)
bin
Add 64-bit iOS SEP xtr plugin
Add PIE flag check in kernelcache detection
bin.str.enc: Accept UTF hyphen aliases (#15492)
Support UTF32-BE decoding (#15472)
Recognize Unicode BOMs (#15469)
Use pj in the izj and izzj commands
Fix #15445 - Add support for Mach-O external relocs
Add support for C64 PRG fileformat
pd: Don't abort string printing on initial null if bin.str.enc != guess (#15446)
Fix #14279 - Ignore entrypoint on non-executable ELFs
Analyse HIOS and LOOS symbol types by default. (#15411)
build
Fix #15485 - Improve argument parsing in sys/{install,build} (#15486)
FIx 32bit windows
Rename "asan" to "sanitize" (#15412)
Fix build for 32bit Linux systems
Fix build of the onefied shared lib
command
Very simple tree sitter integration (#15414)
config
Pass R2_CONFIG file to ! commands and serialize methods
cons
Fix #14197 - Don't highlight control chars on hud filter (#15552)
Include last line when greping using foo~n.. (#15524)
core
Fix some Race Conditions with the thready task scheduler (#15667)
Make Task Scheduling Explicit (#15511)
asm.cmt.off: Accept 0 & 1 as aliases for false & true respectively (#15500)
Use sigaction instead of signal
CPU affinity API introduction
Honor cfg.editor in 'vi' instead of always using 'vi'
Implement $foo:=,+=,-= and $foo to alias some flags commands
Support 'f foo+=4' and 'f foo-=4' syntax for flags
debug
Improve debug rebasing and fix partial windows rebase
Refactor debug native's wait function
Fix native debug not working with files that were opened as RW
Add ppid to win32 debug and 'dp''s display/json
Add process selection to w32 debug
Fixed a crash caused by reopening gdb
Fixed not killing child processes and added detach
Fixed gdbr warnings and a dpt crash after debug was over
Added an event to signal the end of the debug session
Fix 'oo' rebasing when leaving debug and add 'doc' to exit
Silence drr warning on UT64_MAX registers
Fixed an issue with detached child breakpoint inheretence
Added oodf\doof to enable rebasing for remote debug
Rebase Breakpoints for PIEs
Added dp processes info support to gdbr
Add breaking to ood in linux to avoid execvp freezing
Allow debug plugins to modify pid/tid on select
Fix linux_set_options error
Add process selection to linux native debug
Setting parent pid on pid list on BSD
Show all processes for pid 0 using dp
Improve linux native debug dp output
Fix getting DRX breakpoint size
Fixed overflow that broke remote debugger reopening
Impl. list modules for WinDbg
Fix WinDbg IO in page boundaries
Fixed windbg concurrency and added missing locks
Fixed windbg pipe timeout behavior on linux
Added rebuild rules for windbg
Fixed windbg continue on windows 7 64bit
Allow breaking for WinDbg
Update hardcoded gdbr registers for 16/32bit x86 (#15488)
Added parsing support to all gdb registers
Fix gdbr's reg_write and reg_next_diff for reverse stepping
Reduced gdbr's tcp connect timeout and added a break
Fix gdbr not closing sockets after connect failed
Add break to gdbr's read_packet and move isbreaked to libgdbr
Fix gdbr_write_registers and refactor gdbr_write_reg
Replaced lock_check with tryenter in gdbr_read_registers
Add breaking to gdbr connect to avoid waiting on invalid connections (#15442)
Add experimental ymm regs support for linux-x64 and extend drm command
Add Windows 8 and 8.1 WinDbg profiles
Fix attaching to a pid on Windows (#15406)
Fixed w32dbg breaking issues (#15386)
Add support for printing xmm* as packed floats and doubles (#15378)
disasm
Fix hidden hint.lea for hint.pos==0
Improve switch-statements in disassembly
Add refs, xrefs and esil columns to pdt
Add asm.cmt.esil to show ESIL as comment
doc
Improve macOS installation documentation (#15438)
Fix links to Doxygen documentation (#15377)
gdbclient
gdbclient reduces risk of use after free down the road
io
Uses the setitimer api instead for the alarm in self://
Automatically set the debug plugin when opening debug uris (#15403)
json
Add current process field to dpj
network
Fix r_socket_connect not using the given timeout in unix
print
Fix #14661 - Support parsing binary protobuf data (#15423)
Add utf-8 support in r_print_rangebar (#15389)
r_debug
Refactor signal handling for FreeBSD
search
Introduce the r_magic_load_buffer() api and boolify a bit
Update RSA key search to find larger keys (#15494)
Search for AES 128, 192 and 256-bit keys (#15426)
signatures
Add auto zignspace generation for the zg command (#15402)
test
Implement asm, fuzz and json test runner in r2r.v
util
Add RIntervalTree data structure
Added r_th_lock_tryenter API (#15454)
Use HtPP for RStrConstPool (#15424)
visual
Improve the interaction with decompilers in panels
Reduce the blocksize on some hexvisual modes
windows
Add command to identify window under cursor
Fix #15456 - Fix reopening in write mode
Fix hang when running dc in a task
Changes for 4.0
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 and ao
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, add drm 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
print
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)
Changes for 3.9.0
anal
Implement anal.norevisit using SetU instead of Sdb
Fix #15013 - jump/cjmp analop for m680x
Fix the infinite aac issue, reduce false positives, speedup a bit (#15015)
Fix mov.l/jsr ESIL for SuperH4 (#15039)
Fix nopskip (its not fixed at all. just random typing here and there) (#15024)
Add anal.nonull to avoid analyzing functions if starting by zeros
Fixed i4004 arch to be according to spec (#15062)
Fix zero register set issue (r2wars)
Implement types field for zignatures
cons
Fix #14611: Vi-mode indication by prompt color
Add a way to print an aliased without a trailing new line (#15031)
Fix clicking on frame borders to resize
Remove code for no-anal asm.bb.line (#14977)
core
Make -m do an implicit -s
Fix #14990 - multiple quoted command parsing issue
Fix multiple quote cmd issue
Fix #14019 - Move ta to aht, move other commands around, refactor indentation
Fix #10851 - Solve slurp messages on http/sandbox/pipe
Don't run ldconfig when installing into /usr (#15049)
debug
Fix gdb reg write byte order (#15009)
Improving slighty the process status check on Darwin
On Darwin, expose process path
ASLR check setting fix on FreeBSD
emu
Hackaround to get esil stepping on delayed execution
Fix arm32 stmia post-increment (#14983) (r2wars)
io
Support shm_open in shm:// and some code cleanup
Fixing perms for Darwin
Fix #15002 - Propagate write error issues into RCore.patch
Print error msg if write fails (#14978)
Fixing self:// perms issue on Darwin
* Fri Sep 06 2019 Paolo Stivanin <info@paolostivanin.com>
- Update to 3.8.0
analysis
Improve the aab (blaze) analysis by honoring data meta
Speedup and reduce false positives in aae by honoring code/string/format
Do not analyze functions in strings/data by honoring the meta
Fix infinite (or expensive) loop when fcnsize=0
Honor anal.strings in aav
Define argument and ret pseudo registers in the SuperH4's reg profile (#14920)
Introduce anal.in=code (2x faster aar in some big binaries)
Introduce afisaj and fix table contents for afisao and such
Implement afis[aof] - to show instruction type, family and mnemonic tables
Fix as command to resolve syscall by name, number and SN reg
Fixing ESIL for ARM architecture pre-indexed addressing mode with LDRB (issue #14850) (#14901)
Add more info in aflt and add afltj
Initial implementation of aflt (using the new RTable API)
Hide the shift overflow warnings under esil.verbose
Fix ownership issues related to cc
Add calling conventions for ARM32 and Thumb
Unify the use of R_ANAL_CC_MAXARG
Propagate noreturn information (#14793)
bin
Fix code injection issues i* commands (rabin2 -r)
Fix #14930 - handle LC_DATA_IN_CODE in macho
Fix strings on ELF bins for SH-4 with the Renesas SDK
Support deep JSON format for binary headers in iHj
Fix Cf with named formats when .iH* is used
Fix #14898 - Show warning when -B used on unknown binaries
build
Shrink the Cydia package from 512mb to only 64
core
Add single quote as alias for =! and \
Support 0X as an alias for 0x in numbers
debug
Fix crash in gdb client (#14897)
Notify user on hardware breakpoint hit
diff
AGraph integration with radiff2
disasm
Fix #14716 - Honor local flags in RParse
Implement asm.hint.emu and improve Vr reftype selection
Do not try to resolve strings pointed by adrp instructions on arm64
Honor asm.instr in pdi
Hide brackets for LEA even if operand is section flag
Add support for the amd29k architecture
pix and pdx are now aliases for pad
doc
Remove help for hud in ??
graph
Fix #14859: Enter used to update seek in visual call/ref graphs (#14906)
io
Fix a couple of bugs in wo* and implment wo8
Add support for io-plugin initialization via null system command =! (#14915)
Simplification of the io_self plugin for macOS/iOS
Consider endiannes when performing block write operations
panel
Few memory leaks fixes
Fix #14891 - Seek in panels after coming back from console
Fix #14883 - use[] to realign comments in disasm
O in visual is supported in panels with the "i" key
Added some asm settings and classified it
panels
Fix #14891 - Seek in panels after coming back from console
Fix #14883 - use[] to realign comments in disasm
O in visual is supported in panels with the "i" key
Added some asm settings and classified it
print
Implement pv* to completely fix #14165
Fix #14165 - Implement pVj and fix pvj with argument
Fix #14936 - Add po[..] set of commands
Implement 'cols' RTable.query to filter by column names
Use block character for p= and p== graphs (#14941)
r2pipe
Initial support for r2pipe.html
rop
Add ROP chain execution support in ragg2
search
Let search.align override arch.align if set, improves aav in SH
Bring back /ai and fix regression for SUB.val
Skip gadgets starting with a nop in /R
Fix #14755 - read-only raw search
Fix #14202 - Add support to '\d', '\w', etc. in regex
util
Initial implementation of the RTable API with filter, sorting and query APIs
visual
Fixes #14914: Mouse wheel for hud (#14940)
Improve mouse in visual (hud instead of goto and ignore cursor toggle
windows
Fix #14816 - Properly get lib path
Other Changes
add nf flag in ESIL generated for ARM thumb (#14954)
Fix regression in wo2/4/8
Fix divbyzero and garbage variable found by clang-analyzer
Fix memleak in r_strbuf_prepend
Fix logic in 2-byte endian swap used by "wo2" (#14951)
Display operand of EBC push/pop instructions (#14949)
ARM: fix order of registers in push/pop with reglist
fixing esil =[*] (poke multiple regs/values)
Fix out-of-loop issue in aae
macOs/Notes 6.8s -> 6.4s
macOS/r_core 4.3s -> 3.8s
Still wip. only works as a hint when using -e bin.verbose=true
Improve r_core_anal_hasrefs_to_depth (#14863)
Fix Win32 build patch from @sanguinawer (#14945)
Fix uninitialized variable issue related to the mouse state
Fix regressions
Fix #14380 - Fix demangling symbols containing the '?' char with iD
Fix #14889 - Implement ! and c keys in visual help
Improve vq and v!!! workflows
Break early in Cf format name failure
Fix #14939: Replace assertions about missing RReg profile registers with warnings (#14943)
fix help message of ? (#14944)
Fix #14935 - Kill harmless warning
Fix assert in aea for r2wars
Show backtrace when assert happens
Fix crash in aea* when code is ffff
Fix #14771 - Modified pdx/pix to disassemble hexpairs (blocksize-independent) (#14892)
Add frame pointer to AVR register profile (#14938)
Enable mouse only if it was prev enabled and based on scr.wheel (#14925)
Fixes #14911: Use theme colors for p= and p== (#14934)
Add fortune
1 != 0
Massage two more assertions
Fix early assert for IO
Disable Travis IRC notifications
Too much noise at IRC.
Blindfix more null derefs in reg.value
Fix another null arena deref
Assertify io.fd api
Fix aea for instructions referencing PC
Boolify the reg api a bit more
Fix null deref in reg arena
Blindfix for empty reg arenas
Add Predicate for Task Dispatch
Fix assertion when emulating invalid instructions and revert pcalign4 for sh
Update help message for Vd
Fix #14928 - vr to be in sync with Vr
Fix assert regression before it triggers
Minor cleanup and visitor cache proposal test for RAnal.fcn()
Fix #14821 - crash in td
r_str_split_list() rewritten to support nth limit
r2 -qq -c 'aac;aflt size/gt/200,addr/cols/name/nbbs,nbbs/sort/inc' /bin/ls
Fix off-by-one in RCore.lines.initCache();
Set asm.hint.emu=false by default
Fix build
Add r2con2019 svg logo
$ r2 -i doc/r2pipe.html /bin/ls
Syncing with r2hexagon (#14918)
the reference of emulation are displayed one instruction after. which is bad
Fix build
Fix Windows build (#14916)
afisa uses rtable, as well as afist@@@f
Useful for r2frida to automatically run .=!i*
This makes reading iOS apps much simpler by removing lot of false positive strings
Fixes #14900: Disable color for dot mode (#14908)
Better directory structure for the panels config file (#14903)
Fixes #14896: Enable and disable mouse based on requirement in visual/panels (#14909)
v!! = V!! - use ! to toggle between visual and panels
Fix hexdump height issue in panels
Reset mouse settings after leaving the hud
Fixes #14900: xdot type commands functional now (#14902)
Fixes #14900: xdot type commands functional now
Remove recursive handle_stop_reason call
Revert "Fixed the bug that I had fixed before (#14788)"
This reverts commit 9e27142.
This change was breaking panels in Mac
Fix MSVC build
Add afltj and some more fixes and improvements related to RTable
Accepts a query as argument
Fix a segfault in RStrBuf.prepend
Add lsls and ldrh thumb asm.describes
Add missing include install for meson
Improve disasm char hints
Fix some warnings from gcc
Make cmd_depth task-local (#14888)
Add neg pseudo instruction to arm assembler (#14890)
Freed some vars (#14885)
Fixes #14845: Use unicode settings in radiff2 (#14884)
Fixes #14845: Use unicode settings in radiff2
Fixed indent
Tame vayour
Fixes #14534: Ignore non-printable and non json chars (#14876)
Fix #14878 - Fix unaligned field access
Add afos command and minor cleanup for afo
Fix null derefs in afv subcommands when no function is found
Fix afvn outside of Function (#14882)
Fixes #14856: Changing visual seek behaviour in Vv (#14877)
Fix #12438 - Fixes for PDB (#14874)
Fix use after free when autoloading pdb
Use heap on td command
Fix #12438 - Fix wrong 2 byte read for char value
Fix crash on r_line_readchar_win (#14875)
Merge pull request #14868 from kazarmy/x86-cmp-disp-for-disp
Use op->disp instead of op->ptr for disp of x86 CMP (and ACMP)
Drop not needed wrapper
Fix non-unicode Windows build virtual keys not working
Fix arrows in vi mode on Windows
Merge Windows and Unix dietline implementation
Simulate escape sequences in r_line_readchar_win
Fix some bugs on Windows
Some refactoring
Fix #14854 - Fix glitch in asm.hint.pos=0
Use LTO for the Cydia build
Fix segfault in r_main_free
Add the syscall number regname for hexagon arch
Fix #14870 - Fix crash in type propagation when no cc defined
Instead, recursively going through the regions while focusing
on main addresses and grabbing pages states informations.
Fixes for the cydia static build of r2, needed for iOS12
add missing =SN for the SH analysis plugin
Fix for meson
Fix hexagon jumps second try (#14867)
Synchronized files with radareorg/r2hexagon
Fix warning, assertions and regressions in arg type handling
Add missing cc-x86-16
Fix anal.depth and remove arm16 dim
Code cleanup
Update capstone again (#14862)
Fix #14861 - Reset cursor after leaving panel's prompt ':'
Fixed the bug that I had fixed before (#14788)
Use op->disp instead of op->ptr for disp of x86 MOV (and others) (#14829)
Use op->disp instead of op->ptr for disp of x86 MOV (and others)
Fix for jumptable MOV
Fix for [] operands
Fix another Appveyor hang (#14844)
Fix coredump PC not being considered (again) (#14836)
Use r_sandbox_fopen instead of fopen (#14832)
Revert multiple layout saving regression in panels (#14792)
Some little refactoring in panels (#14798)
Fix #14522: Added g support for Vv mode (#14823)
Add a small menu tick for visibility when scr.color is 0 in panels (#14801)
Avoid disassembling the same instruction twice on rop search (#14815)
Avoid disasm the same instr. twice on rop search
Fixes for comments
fix double free
Fixes #14267: Does not print the function name for agft (#14819)
Fixes #14672: f= gives output from current flagspace (#14820)
Add @sghctoma pf definition for BIOS and NTFS
Add *BSD SourceHut builds (#14824)
Fix r_print_color_op_type param type mismatch (#14825)
Specify graph.diff colors for sepia (#14817)
Implement agd* based commands (#14809)
ag* commands fully functional
Indent and r_return usage
All agd* commands functional now
Graphs are pretty now
Refactoring the code
Fixed assertion error
Fixed broken agf
Always bracket indirect addr operand (except LEA) (#14802)
Always bracket indirect addr operand (except LEA)
Don't use RAnalOp
Add clang-cl support (#14814)
Fixes for path autocompletion on Windows (#14813)
Fix register writing on Windows (#14805)
Fix register writing on Windows
Drop unecessary use of heap
Fix stack-use-after-scope (#14811)
Fix #14804 - Make sure anon structs have unique names (#14806)
Also skip "union" to get type
Fix Appveyor hang on master (#14803)
Propagate noreturn information
Avoid infinite loop when propagating noreturn information
Avoid all recursive cases
Avoid warnings
use r_anal_bb_opaddr_i
* Thu Sep 05 2019 Daniel Molkentin <daniel.molkentin@suse.com>
- Update to 3.8.0
analysis
* Improve the aab (blaze) analysis by honoring data meta
* Speedup and reduce false positives in aae by honoring code/string/format
* Do not analyze functions in strings/data by honoring the meta
* Fix infinite (or expensive) loop when fcnsize=0
* Honor anal.strings in aav
* Define argument and ret pseudo registers in the SuperH4's reg profile (#14920)
* Introduce anal.in=code (2x faster aar in some big binaries)
* Introduce afisaj and fix table contents for afisao and such
* Implement afis[aof] - to show instruction type, family and mnemonic tables
* Fix as command to resolve syscall by name, number and SN reg
* Fixing ESIL for ARM architecture pre-indexed addressing mode with LDRB (issue #14850) (#14901)
* Add more info in aflt and add afltj
* Initial implementation of aflt (using the new RTable API)
* Hide the shift overflow warnings under esil.verbose
* Fix ownership issues related to cc
* Add calling conventions for ARM32 and Thumb
* Unify the use of R_ANAL_CC_MAXARG
* Propagate noreturn information (#14793)
bin
* Fix code injection issues i* commands (rabin2 -r)
* Fix #14930 - handle LC_DATA_IN_CODE in macho
* Fix strings on ELF bins for SH-4 with the Renesas SDK
* Support deep JSON format for binary headers in iHj
* Fix Cf with named formats when .iH* is used
* Fix #14898 - Show warning when -B used on unknown binaries
build
* Shrink the Cydia package from 512mb to only 64
core
* Add single quote as alias for =! and \
* Support 0X as an alias for 0x in numbers
debug
* Fix crash in gdb client (#14897)
* Notify user on hardware breakpoint hit
diff
* AGraph integration with radiff2
disasm
* Fix #14716 - Honor local flags in RParse
* Implement asm.hint.emu and improve Vr reftype selection
* Do not try to resolve strings pointed by adrp instructions on arm64
* Honor asm.instr in pdi
* Hide brackets for LEA even if operand is section flag
* Add support for the amd29k architecture
* pix and pdx are now aliases for pad
doc
* Remove help for hud in ??
graph
* Fix #14859: Enter used to update seek in visual call/ref graphs (#14906)
io
* Fix a couple of bugs in wo* and implment wo8
* Add support for io-plugin initialization via null system command =! (#14915)
* Simplification of the io_self plugin for macOS/iOS
* Consider endiannes when performing block write operations
panel
* Few memory leaks fixes
* Fix #14891 - Seek in panels after coming back from console
* Fix #14883 - use[] to realign comments in disasm
* O in visual is supported in panels with the "i" key
* Added some asm settings and classified it
panels
* Fix #14891 - Seek in panels after coming back from console
* Fix #14883 - use[] to realign comments in disasm
* O in visual is supported in panels with the "i" key
* Added some asm settings and classified it
print
* Implement pv* to completely fix #14165
* Fix #14165 - Implement pVj and fix pvj with argument
* Fix #14936 - Add po[..] set of commands
* Implement 'cols' RTable.query to filter by column names
* Use block character for p= and p== graphs (#14941)
r2pipe
* Initial support for r2pipe.html
rop
* Add ROP chain execution support in ragg2
search
* Let search.align override arch.align if set, improves aav in SH
* Bring back /ai and fix regression for SUB.val
* Skip gadgets starting with a nop in /R
* Fix #14755 - read-only raw search
* Fix #14202 - Add support to '\d', '\w', etc. in regex
util
* Initial implementation of the RTable API with filter, sorting and query APIs
visual
* Fixes #14914: Mouse wheel for hud (#14940)
* Improve mouse in visual (hud instead of goto and ignore cursor toggle
windows
* Fix #14816 - Properly get lib path
Other Changes
* add nf flag in ESIL generated for ARM thumb (#14954)
* Fix regression in wo2/4/8
* Fix divbyzero and garbage variable found by clang-analyzer
* Fix memleak in r_strbuf_prepend
* Fix logic in 2-byte endian swap used by "wo2" (#14951)
* Display operand of EBC push/pop instructions (#14949)
* ARM: fix order of registers in push/pop with reglist
* fixing esil =[*] (poke multiple regs/values)
* Fix out-of-loop issue in aae
* macOs/Notes 6.8s -> 6.4s
* macOS/r_core 4.3s -> 3.8s
* Still wip. only works as a hint when using -e bin.verbose=true
* Improve r_core_anal_hasrefs_to_depth (#14863)
* Fix Win32 build patch from @sanguinawer (#14945)
* Fix uninitialized variable issue related to the mouse state
* Fix regressions
* Fix #14380 - Fix demangling symbols containing the '?' char with iD
* Fix #14889 - Implement ! and c keys in visual help
* Improve vq and v!!! workflows
* Break early in Cf format name failure
* Fix #14939: Replace assertions about missing RReg profile registers with warnings (#14943)
* fix help message of ? (#14944)
* Fix #14935 - Kill harmless warning
* Fix assert in aea for r2wars
* Show backtrace when assert happens
* Fix crash in aea* when code is ffff
* Fix #14771 - Modified pdx/pix to disassemble hexpairs (blocksize-independent) (#14892)
* Add frame pointer to AVR register profile (#14938)
* Enable mouse only if it was prev enabled and based on scr.wheel (#14925)
* Fixes #14911: Use theme colors for p= and p== (#14934)
* Add fortune
* 1 != 0
* Massage two more assertions
* Fix early assert for IO
* Disable Travis IRC notifications
* Too much noise at IRC.
* Blindfix more null derefs in reg.value
* Fix another null arena deref
* Assertify io.fd api
* Fix aea for instructions referencing PC
* Boolify the reg api a bit more
* Fix null deref in reg arena
* Blindfix for empty reg arenas
* Add Predicate for Task Dispatch
* Fix assertion when emulating invalid instructions and revert pcalign4 for sh
* Update help message for Vd
* Fix #14928 - vr to be in sync with Vr
* Fix assert regression before it triggers
* Minor cleanup and visitor cache proposal test for RAnal.fcn()
* Fix #14821 - crash in td
* r_str_split_list() rewritten to support nth limit
* r2 -qq -c 'aac;aflt size/gt/200,addr/cols/name/nbbs,nbbs/sort/inc' /bin/ls
* Fix off-by-one in RCore.lines.initCache();
* Set asm.hint.emu=false by default
* Fix build
* Add r2con2019 svg logo
* $ r2 -i doc/r2pipe.html /bin/ls
* Syncing with r2hexagon (#14918)
* the reference of emulation are displayed one instruction after. which is bad
* Fix build
* Fix Windows build (#14916)
* afisa uses rtable, as well as afist@@@f
* Useful for r2frida to automatically run .=!i*
* This makes reading iOS apps much simpler by removing lot of false positive strings
* Fixes #14900: Disable color for dot mode (#14908)
* Better directory structure for the panels config file (#14903)
* Fixes #14896: Enable and disable mouse based on requirement in visual/panels (#14909)
* v!! = V!! - use ! to toggle between visual and panels
* Fix hexdump height issue in panels
* Reset mouse settings after leaving the hud
* Fixes #14900: xdot type commands functional now (#14902)
* Fixes #14900: xdot type commands functional now
* Remove recursive handle_stop_reason call
* Revert "Fixed the bug that I had fixed before (#14788)"
* This reverts commit 9e27142.
* This change was breaking panels in Mac
* Fix MSVC build
* Add afltj and some more fixes and improvements related to RTable
* Accepts a query as argument
* Fix a segfault in RStrBuf.prepend
* Add lsls and ldrh thumb asm.describes
* Add missing include install for meson
* Improve disasm char hints
* Fix some warnings from gcc
* Make cmd_depth task-local (#14888)
* Add neg pseudo instruction to arm assembler (#14890)
* Freed some vars (#14885)
* Fixes #14845: Use unicode settings in radiff2 (#14884)
* Fixes #14845: Use unicode settings in radiff2
* Fixed indent
* Tame vayour
* Fixes #14534: Ignore non-printable and non json chars (#14876)
* Fix #14878 - Fix unaligned field access
* Add afos command and minor cleanup for afo
* Fix null derefs in afv subcommands when no function is found
* Fix afvn outside of Function (#14882)
* Fixes #14856: Changing visual seek behaviour in Vv (#14877)
* Fix #12438 - Fixes for PDB (#14874)
* Fix use after free when autoloading pdb
* Use heap on td command
* Fix #12438 - Fix wrong 2 byte read for char value
* Fix crash on r_line_readchar_win (#14875)
* Merge pull request #14868 from kazarmy/x86-cmp-disp-for-disp
* Use op->disp instead of op->ptr for disp of x86 CMP (and ACMP)
* Drop not needed wrapper
* Fix non-unicode Windows build virtual keys not working
* Fix arrows in vi mode on Windows
* Merge Windows and Unix dietline implementation
* Simulate escape sequences in r_line_readchar_win
* Fix some bugs on Windows
* Some refactoring
* Fix #14854 - Fix glitch in asm.hint.pos=0
* Use LTO for the Cydia build
* Fix segfault in r_main_free
* Add the syscall number regname for hexagon arch
* Fix #14870 - Fix crash in type propagation when no cc defined
* Instead, recursively going through the regions while focusing
* on main addresses and grabbing pages states informations.
* Fixes for the cydia static build of r2, needed for iOS12
* add missing =SN for the SH analysis plugin
* Fix for meson
* Fix hexagon jumps second try (#14867)
* Synchronized files with radareorg/r2hexagon
* Fix warning, assertions and regressions in arg type handling
* Add missing cc-x86-16
* Fix anal.depth and remove arm16 dim
* Code cleanup
* Update capstone again (#14862)
* Fix #14861 - Reset cursor after leaving panel's prompt ':'
* Fixed the bug that I had fixed before (#14788)
* Use op->disp instead of op->ptr for disp of x86 MOV (and others) (#14829)
* Use op->disp instead of op->ptr for disp of x86 MOV (and others)
* Fix for jumptable MOV
* Fix for [] operands
* Fix another Appveyor hang (#14844)
* Fix coredump PC not being considered (again) (#14836)
* Use r_sandbox_fopen instead of fopen (#14832)
* Revert multiple layout saving regression in panels (#14792)
* Some little refactoring in panels (#14798)
* Fix #14522: Added g support for Vv mode (#14823)
* Add a small menu tick for visibility when scr.color is 0 in panels (#14801)
* Avoid disassembling the same instruction twice on rop search (#14815)
* Avoid disasm the same instr. twice on rop search
* Fixes for comments
* fix double free
* Fixes #14267: Does not print the function name for agft (#14819)
* Fixes #14672: f= gives output from current flagspace (#14820)
* Add @sghctoma pf definition for BIOS and NTFS
* Add *BSD SourceHut builds (#14824)
* Fix r_print_color_op_type param type mismatch (#14825)
* Specify graph.diff colors for sepia (#14817)
* Implement agd* based commands (#14809)
* ag* commands fully functional
* Indent and r_return usage
* All agd* commands functional now
* Graphs are pretty now
* Refactoring the code
* Fixed assertion error
* Fixed broken agf
* Always bracket indirect addr operand (except LEA) (#14802)
* Always bracket indirect addr operand (except LEA)
* Don't use RAnalOp
* Add clang-cl support (#14814)
* Fixes for path autocompletion on Windows (#14813)
* Fix register writing on Windows (#14805)
* Fix register writing on Windows
* Drop unecessary use of heap
* Fix stack-use-after-scope (#14811)
* Fix #14804 - Make sure anon structs have unique names (#14806)
* Also skip "union" to get type
* Fix Appveyor hang on master (#14803)
* Propagate noreturn information
* Avoid infinite loop when propagating noreturn information
* Avoid all recursive cases
* Avoid warnings
* use r_anal_bb_opaddr_i
* Wed Aug 14 2019 Daniel Molkentin <daniel.molkentin@suse.com>
- Update to version 3.7.1
no changelog provided
- Update to version 3.7.0
anal
* Fix #13766 - Sum the meta_data_code as covered code
* Add more function definitions for posix and macOS binaries
* Add argument to 'afll' to select column to sort by
* Print MSVC RTTI Warnings only on anal.verbose=1
* Add afj command to analyze jmptbl from the shell
* Honor RAnalBlock->switch_op in afb. and afbi
* Improve ARM64 PAC instructions support
* Fix #14530 - Implementation of i.~{} aka RCoreItem
* Added val op hints to let the user define jmptbl sizes
* Fix #14501 - Jumptables are made of signed values
* Reduce xrefs sorting for aflj perf
* Initial implementation of anal.trycatch blocks
asm
* Implement PAC instructions in the ARM64 assembler
bin
* Add icqj command
* Fixes for msvc demangling (#14695)
* Add jni.h in bin/d for pfo
* Update Mach-O hardcoded format definitions
* Improve Mach-O header fields
* Improve RConsBind and use it from RBin via iz^C
* Use libswiftCore library if available to demangle Swift5 symbols
* Fix oba on frida://
* Add more e_machine values for ELF
* Fix support for Swift5 demangling via bin.demanglecmd
* Fix ordinal name on Linux for NE (invalid sdb path location)
* Fix function detection on coff file
* Add icqq to print unknow classnames
* Add icc support for Java/Dalvik
* Improve ObjC classes boundary checks and slightly improve demangling
* Parse macho's LC_ENCRYPTION_INFO command in rabin2 -H
* Fix undefined behaviour bugs in malformed macho bins
* Handle “stub and resolver” exports and fix export trie for dyldcache
* Handle the export flags to avoid de-syncing
* Support ObjC categories on mangled classes
* Avoid loops in Mach-O export trie walking
* Parse Mach-O exports trie structure
* Fix #14499: Detect ascii substrings
* Show Class visibility information in icj for DEX
* Fix symbols in wasm and add custom sections
* Parse Rich header in PE
* Initial implementation of the bin.libs imports linking
* List multidex as dependency libs
* Initial working implementation of bin.libs
* The words of GOT
* Fix new exe header detection for MZ
* Optimize DEX subsystem detection
* Fix #14441 - Invalid codesize in some DEX files
* PoC: Initial implementation of direct bin symbols (20% speedup in loading times
* Remove the check_bytes and more bin-buf refactoring
* Add __const to potential VTable Sections
* Add r2 iw and rabin2 -w to enumerate try/catch blocks
* Parse the try/catch info of methods in DEX files
build
* Fix android-static
* Delete prefix/ and fix static builds (missing libmpc.a)
* Fixes for the android compilations
* Add $onlydebug in sys/ios-cydia.sh
* Towards emscripten build fix (update sdb)
* Enable ASSERTS on all travis builds, to avoid confusion
* mesonbuild: Backport to python 3.5
cons
* Make click and drag work on Windows
* Fix #12921 - Impl. r_cons_arrow_to_hjkl for Windows
* Fix scrolling directions in the hud
* Implement RCons.echo() and use it from r2.cmd("echo64")
* Fix grep in tasks
* Fix #11396: Integrate dietline with the hud
* Fix for RCons.html when no color is used
* Add example file for the pri command
* Add pri command to print raw images in RGB (using stiv code)
* Introduce ?e= and ?ed to print progressbar and 3D donut
* WIP: Initial support for rotozooming strings via ~<zoom
* Initial implementation of the human friendly json indent {:
* Fix #9269 - Initial Implementation of vi mode
* Enable click mouse input on Windows
* Add mouse click support to VTE terminals. Hopefully fix others too
* Click toggles cursor, make panels click mode more consistent
* Add RCons.get_click(), initial integration in visual and panels
* Initial support of mouse wheel+click
* Improve the ayu theme
* Clear also attributes on screen clear under scr.ansicon=0
core
* Handle ^C in repeated commands
* Implemented head and tail commands
* Alphabetically sort more help messages and fix /ac/aa help msg
* Fix i subcmd help grep
* Initial implementation of calling the r*2 commands natively from inside r2
* Expand on FreeBSD>=10 sandbox handling
* Add -qq to force quit. Avoid the -qcq confusion
debug
* Windows native debugger refactoring
* More fixes to WinDbg (#14675)
* Step over rep and repne prefixed instructions with dsui
* Fix breakpoints handling for FreeBSD
* Fix single-step in the iOS-arm64 native debugger
* Fix xnu_thread_get_drx for iOS/arm64
* Honor SWI for step-over
decompiler
* Add support for the native r2ghidra plugin detection in cmd.pdc
disasm
* Don't show function name comment in Visual mode
* Fix #14655 - Improve asm.pseudo for Dalvik
* Demangle xrefs if asm.demangle=true and use '@' for xref locs
* Fix #14622 - Skip reflines on non-executable offsets
* Respace demangled c++ names
* Do not asm.describe metaa .dwords
* Find relocs at instr. location first, then the dest
* Kill MOV/LEA comments
* Implement global imports (aii) and improve disasm-print-instruction code
* Implement 'function imports' concept (afii command)
* Add some SuperH opcode descriptions
fs
* Improve R_FS via IO
graph
* VV<> draw refs/xrefs graphs for visual navigation
* Implement icg to create class graphs
* Honor utf8 in diagonal graph lines
* Fix #14553 - Use HtUP to store canvas attributes instead of a sorted array (#14556)
* Add graph.body and graph.bubble config vars, move sin/cos into r_util
* Initial implementation of RConsCanvas.circle and bubble graphs
io
* Fix timeout issue in http.get
* Better use of perm/mode names in R_IO
mount
* Autocompletion for mount commands
mouse
* Improve mouse support in visual prompt
panels
* Drag and resize the panels with the mouse
* Add aflm and handle : as separator in click
* Handle click on toggle cache, frame title and screen borders
* Add tiny graph in panels and simplify the code a bit
* Show all the decompilers output at once
* W + hjkl just works like Ctrl w + hjkl
* Seek by clicking the offsets on Function Panel
* Right click is supported to open " widget
* Wheel is supported
* Mouse supports the menus which have spaces in their names
* Mouse kind of works on the menu, still lot to work on
* W + h/l moves the current panel to the direction like vim does with Ctrl W + h/l
* Introduce scr.demo to add effects in panels enter/exit
* Fix word highlighting with mouse in panels
* Cache the pdc outcome for each function
* Handle mouse click on panel tabs and select frames
* The 'g' key seek to highlighted address in current panel
* Highlight words onclick in panels
* Fix #14468 - Add pdsf panel for the " widget
* Initial support for saving the layouts with the names feature
* Unsync the base offset of each tab
parse
* Add r_parse_ctype
print
* Fix aho being ignored by asm.tabs
r2pipe
* Enlarge RLang.cmd() to 8KB length commands
* Improve decompiler integration 'pdc?' -> '!*%s -h" ..
* Interpret .c files as #! via -i
search
* Skip PAC instructions in rop searching
* Skip ROP gadgets starting with RET
* Fix #14585 and #14584 - /c->/a* /C->/c /B->/mb /M->/mm - better help msg and autocompletion
types
* add tlj and tllj
* Fix #11404 - Implement "afsr" to change function return type
visual
* Visual Help colorized
* Improve the visual browse classes mode (vbc)
* Initial mouse support for visual tabs
* vda is an alias for vA
wasm
* Few memory leak fixes
* Copy the symbol id instead of reference
write
* Implement wao for dalvik
* To Review
* Release 3.7.0 - TopHat
* Use RFlag.list() instead of .get() avoid false positives (#14735)
* Fixx oobread in flag.c (#14728)
* check for null
* Fix #14732 - Fix out-of-bounds read
* Better gameboy theme
* Fix #14696 - Fix p= in utf8 mode recent regression
* Fix edge detection for click and drag
* Fix a bug where a drag event could be initiated outside an edge
* Fix not being able to select the menu anymore
* Fix not being able to click on the X to close a panel
* Fix afsr not performing type checks
* Fix memory leaks part 2 (#14720)
* Fix Incorrect Break Check from de7a488 (#14723)
* Fix win32 compilation (#14722)
* Fix afs not changing function name (#14721)
* Changed the utf8 characters (#14719)
* Fix #14711 - Merge Fun/About/Help in panels
* Fix crash in .i~s .. recursive infinite grep strings issue (#14718)
* Add fcn name in Visual mode if necessary when asm.filter=false and asm.jmpsub=false (#14713)
* Fix WinDbg plugin warning
* Fix #13633 - support nested unions (#14712)
* Handle 'e' in '"'
* Fix crash in canvas
* Fix projects, add of help and improve gb again
* Fix assertion
* Improve the gameboy theme
* Hide a harmless warning when string section size is 0
* Assertify the IO API a bit more
* Fix $? value in im prompt.exec from rc to num.value
* Kill os and ons commands (they werent even documented)
* Fix #12911 - Fix types starting with 'void' not being considered
* Fix abbreviated names being lost
* Hide this 'code slot size' warning under bin.verbose
* Use void in function prototypes (#14700)
* Revert that flagsize fix
* Proper fix of the oob8 bug
* Fix 1 byte oob read issue
* Fix 8byte oob write
* class, method and field names are now shorter and easier to read
* r2pm: handle info and install arguments properly (#14693)
* bin_symbols: Add quoting (#14690)
* Not camel case but snake case (#14687)
* Fix mouse click not opening file menu in panels (#14688)
* Only suspend threads if dbg.threads=true on Windows (#14689)
* Windows native debugger refactoring
* Massive win32 native debugging code refactoring
* and corresponding fixes.
* Fix hang after killing process
* Hide command autocompletion warning message
* they’re now aligned with libr/bin/d/macho
* also tweaked r_print_format_struct_size to work with referenced format names
* Fix some leaks found by ASAN
* Break demangled xref comment when in graph (#14678)
* Refactoring (#14681)
* Fix seeking (stepping now works)
* Fix more crashes
* Fix compiler warnings
* Refactoring (#14676)
* improve macho format definitions
* allow enums and bitfields with arbitrary size
* avoid modifying the format string argument inside r_print_
* Fix capstone symbols visibility
* Fixes #14652: Fixes visual hud regressions
* Don't show flag name for internal demangled xref
* Refactoring
* Default scr.breaklines to true
* Fixes #14353: Added utf8 support for agft
* Featur #14351: Added utf8 support for p= based commands
* All emacs dietline keybindings are implemented (#14664)
* Some fixes to windbg (#14666) #debug #windbg
* Fix #10505
* Fix wrong register profile being picked
* Fix use-after free(s) and null derefs
* Fix warnings
* cmd_debug.c: Make addroflib use basenames
* Fix flagspace autocompletion
* Add protobuf magic
* Pull enums out of RParseCTypeType
* Support struct/enum/union before name in ctypes parse
* Add cdecl-thiscall-ms Calling Convention (#14653)
* Add more tokens for the panels clicking thing
* Sort om help messages
* Fix #14640 - /aa
* Add help for /ac (#14638)
* Tested on rabin2 -D and iD command
* Add __stack_chk_fail to types-android.sdb.txt (#14641)
* Fix W command (#14636)
* Fix W command
* Required for r2pipe programs to buffer output to be processed by r2
* Handle 'e' in window panels mode too
* Refactoring (#14630)
* Don’t print non-ObjC methods in classdump_objc
* Improve ObjC classdump icc
* Parse ObjC superclass name
* Aim to fix O_BINARY issue in rahash2 on windows
* Fix ?b64- command
* A bit more cleaner vbtll (struct visual browser)
* Refactoring panels (#14613)
* Use eq[] instead in bin_classes()
* Respace demangled c++ names
* ic*: replace ' ' with '_' in flag name
* Fix avra
* Add guards just in case; use r_str_rchr() instead
* Use upper case for #defines
* $ r2 Payload/Undecimus.app/Undecimus
* [0x10007e3ac]> s 0x1000081d8;af;s 0x1000082b0;afj 0x1000085fc 4
* [rio] fix r_io_cache_commit to commit all lines
* Support for aap (function preludes with pacibsp)
* Handle LDURSW properly
* Define op->type for PAC instructions (not just family)
* Add more asm descriptions for pac instructions
* Click [X] with mouse and close the panel, plus a bunch of refactoring (#14602)
* Add r_parse_ctype
* Add mpc to acr
* Fix r_parse for acr
* Mouse is supported for " widget (#14599)
* Put demangled name directly in call disasm if asm.demangle=true (#14600)
* Put demangled name directly in call disasm if asm.demangle=true
* Constrain possible flag names for functions
* Fix ds_print_fcn_name() comment alignment when asm.cmt.right=false
* Ignore dalvik since it's treated differently
* Use R_FLAGS_FS_SYMBOLS instead in disasm.c
* Oops
* Fix demangled comment order (#14592)
* Fix c99 construct (#14593)
* Better name for seek autocompletion
* Fix #14543: Renamed function doesnt show in autocompletion list (#14591)
* Fix /ao command
* Fix infinite loop in /o-1
* Update capstone v4 and next
* Added support for esc, pag up, pag dwn
* Added vi mode, changed quit method for hud
* Added ^C for vi mode
* Fix wrong reloc command in panels (#14582)
* Docuemnt Q in q?
* Fix C99 construct
* Initial implementation of NE file format (#14573)
* Fix several bugs of mouse and improved a bit
* Simplify the fork+spawn logic on Apple things (#14574)
* Fix anoying aeim warning when debugging
* Minor function signature fixes
* Clean up #14568 code
* Add comment that demangles calls if asm.demangle=true
* Cache on and off works seamlessly
* Fix null deref in 'r2 -qcia --'
* Use PJ for meta (#14567)
* zero RConsGrep in cons_grep_reset() instead
* fix grep expr in cmd_info help
* Changing pdc settings has got a problem in panels and now it is fixed (#14561)
* This should improve performace as you don't need to shift elements of
* the sorted array when you need to insert a new one.
* skip reexports and “stub and resolver” exports for now, the semantics are different and need to be treated in a different way
* but advance the pointer accordingly, to avoid loosing sync while walking the trie (especially in dyld cache)
* Fix #14552 - issue with Csj and scr.html
* Reduce the questionnaire when replace/create a panel, also replace the cmd of the current panel is available from " widget (#14551)
* Fix C99 construct without using -c99 (#14550)
* The image is generated with Gimp, saving as .data (RGB)
* This is 128(W) * 3(RGB) * ?(H) .. the height is computed with the blocksize
* r2 -e hex.cols=128 -qqfcpri doc/cows128.data
* Added arrow info to pdJ (#14422)
* Fix build --without-gpl
* (still far from complete but we need to go forward and kill all the globals \o/)
* PD: the broken test is because initializing RCons twice
* Add several panels to the menu and sort some of them
* Fix invalid JSON in ij output
* Fixes #14524: vi delete command is now 3dw (#14527)
* Fixed dietline warnings
* Changed logic for diw/diW
* Fixes #14524: changed vi delete command format to 3dw from d3w
* Removed unnessary print
* ESC key handled in vi_mode
* Fixes #14521: Add support for ^y when ^w
* Fix #14470: Close popup widget on escape
* Fix #6321: Wrong handling of escape key
* Cursor was missing in the comments panel (#14518)
* Fix wrong assembly of jumps relative to the ESP register (#14511)
* Fix Windows Build (#14512)
* Fix trailing space issue in the GNU sh disassembler
* Fix u/U problem
* The menu properly gets updated as a new layout is saved with a name
* Fix isq. should do the same as is.q
* Fixes #14416: selections in disarm fixed
* Improve spacing around "//" in unum.c
* "+=1" -> " += 1" in unum.c
* "+1" -> " + 1" in unum.c
* Fix wrong realloc in r_asm_massemble
* In line 694 a buffer of size (sizeof(char*)*32) is allocated. Later on,
* this buffer is realloced to 64. This decreases the size of the allocated
* buffer instead of increase. This may lead to memory corruption.
* Click properly works on the tabs (#14491)
* Fix missing title line in Visual mode when under scr.ansicon=0 (#14490)
* Autocompletion for k command (#14488)
* Autocompletion working for ms
* Removed comments
* Autocompletion for k command
* Fix some bugs and add pddo panel to " widget
* Fix an assert in aoj
* Fix focus and bright themes
* Color regression issue in disasm.c
* Fix scr.wheel.speed regression
* Add gameboy theme
* More code cleanup in RBin (#14473)
* Fix r_str_replace - unit tests added
* Fix two lines in doc/hud
* Autocompletion works for md, mg
* Added autocomplete flag map
* Fix behaviour of click in panels (x<20)
* Fix scr.wheel glich
* Disabled by default at compile time. See FEATURE_SYMLIST define
* Fix crash, reduce false positives of RBin.dol
* Use RBuf.slice in /B
* Fix autocompletion of remote files in #ms (#14284)
* Added Segments panel and made cursor available for both Sections and Segments panels (#14461)
* Add help for afs? command
* Quote wa command generated in visual mode (#11138)
* Use a pointer to eprintf instead
* Fix aaa color under scr.ansicon=0
* small fix for console
* Add spaces around operators in r_num_conditional()
* Add spaces around operators in r_num_to_bits()
* Don't update console panel when it's not absolutely necessary
* Add spaces around operators in r_num_op()
* Add a couple of spaces around '==' in unum.c
* Add a couple of spaces around %
* Remove some spaces
* Add a space
* Fix an UB oobread
* Fix RStr.replace()
* Fix long times for pp -1
* Remove some more spaces
* Remove a space
* Set foreground color just in case
* add r_fs_file_copy_abs_path to get the absolute path of a RFSFile, centralizing edge case handling
* use that in fs_io_read
* add missing free (file->path) in RFSFile destructor
* fix handlePipes for fs shell cat use case
* Fix couple of small bugs in panels with tabs
* Small fix for tab (#14432)
* Python 3.5 (the lowest version that meson supports) has no f-String
* but only old %-formatting and str.format().
* Fix warning when printing level of ">" (#14430)
* Strip trailing whitespaces
* Fix warning -Wstring-plus-int on cont_level
* Remove unused var
* Fix ragg2 *.c on macOS
* Add fortune
* tT segfaults so fixing it (#14426)
* Post release version bump (3.7.0-git)
* Fix a few null dereference issues (#14419)
* Fix ec* wrt attributes (#14421)
* Fix for the debug mode that makes disasm so slow (#14414)
* Notes:
* SH opcodes array, file libr/asm/arch/sh/gnu/sh-dis.c from GNU binutils, defines "bf.s" and "bf/s", same with "bt.s" and "bt/s".
* Both pairs are identical, e.g. bt.s and bt/s mean the same thing.
* As *.s variants come first in the table, radare and binutils-objdump print bf.s and bt.s names.
* Still true for latest binutils (v2.32 2019-02-02).
* Renesas chip hardware manuals and IDA Pro only use bf/s and bt/s.
* Complete R_CONS_ATTR_ series (#14411)
*
- Update to version 3.6.0
* drop radare2-sysmagic.patch
anal
* Fix syscall resolutions for s110 operating system
* wzr/zr/xzr register on arm64 is wired to ground
* Fix naming of entrypoint symbols in files with class information (DEX/C++)
* Fix #13668 - Implement a* as an alias for afl*;ah*;ax*
* Fix and improve ESIL for arm64
* Fix #10567 - Implement afl. command
* Fix afl* not saving function bits
* Add experimental `axm command
* Implement refs for iget/iput Dalvik instructions
* Implement esil for OR and MUL dalvik instructions
* RAnalOp.Type.CAST.toString() and implicit refptr init
* Improve af performance affected by `aflc
* Honor R_ANAL_OP_MASK_ESIL in anal.dalvik
* Improvements in dalvik analysis
* Add Stackframe Anal Hint
* Add opcode mask field in ao and aoj
* Add opcode description in ao
* Show pseudo in ao and aoj
* Improve anal and parse plugins for Thumb
* Implement ESIL for stxb and stxh THUMB instructions
* Fix issue when analyzing the last DEX method
asm
* Handle LEA operand rip in x86.nz
bin
* Fix code section size in dex files
* Handle mod_init/mod_fini as word sections in mach-o
* Handle the interpos section as words in the disasm
* Fix ObjC detection in macho binaries
* Get rid of the ELF-specific C++ detection
* Add -O a/l/ for macho to add libraries
* Honor more segments vs sections, for jmptbl, fatmacho, zeropage
* Fix iS/iSS in macho and kernelcache
* For #14268: Implement ob= listing bin map coverage
* A couple of fixes for base address support
* Add missing ARM64v8 and ARM64e defines for the mach0 parser
* Kill RBinFile.objs RList
* Implement RBinFile.at and make it work with e bin.at
* Fix some RBin file format crashes
* Speedup loading fuzzed ELF files with huge nrel field
* Faster macho loading by reusing symbol parsing for getMain()
* Remove symbol table size hard limit in macho
* Fix regressions in dyldcache and xnu_kernelcache plugins
* Completely eliminate the bytes apis in RBin
* Fix #14147 - Honor -qq for classes and imports
* Initial extermination of the *_bytes methods in RBin
* Fix #12600 - Implement .ic** command to import bin.class info as anal.class
* Handle DEX files with no entrypoint properly
* Properly handle ELFs with no entrypoint defined
* Little ELF segment labelling change UNKNOWN -> NONE
build
* Continuous Fuzzing Integration with Fuzzit
* Add sys/build-shlib.sh and fix static builds
config
* Improve the list of supported decompilers in e cmd.pdc=?
cons
* Little va_list leaking
* Fix #14046 - Don't use ansi with aaa notifications if no ansicon
* Add bold to eco bright items that were originally bold in default palette
* Fix #14254 - Add eco bright (r2 default palette but with bright colors for all)
* Add bright colors to the colors table
* Fix #14101 - Fix non-ansicon UTF printing
* Fix THE glitch affecting panels box colors
* Default to scr.color=COLOR_MODE_16 for Alacritty on Windows
* Dfferent color for up and down in disasm reflines
* Implement reset command to reset the terminal settings
* Enable color prompt on Windows
* Fix Color_GRAY/BGGRAY
* palloc return checks
core
* Fix #14335 - Add sort, join and uniq
* Simplify RConfig.eval and improve e with e, for csv
* Add r_sys_exit to proper quit
* Honor hashbang and PATH when interpretting extension-less scripts
* Honor ^C in @@@F and @@@s
* Implement $O variable pointing at cursor
* Implement |. (alias for .)
debug
* Improvements to windows heap parsing
* Set cmd.gprompt=.dr* when cfg.debug=true
* Initial implementation GetSingleBlock for Windows heap
* Initial implementation of heap parsing for Windows (#14218)
debugger
* Improvements to windows heap parsing
disasm
* Avoid printing nulls on invalid code or missing bin info for Dalvik
* Add asm.movlea configuration option
* Improve comments alignment in the disassembly
* Fix arm64 parse for BL instructions
* fix, improve and add some sh pseudo
* Support asm.hint.pos=-1 for leftish key hints
* Initial cleanup in RParse, delete mreplace plugin
* Toggle asm.dwarf in V# and pds
* Add support for base64 in CL command
* Faster dtd (trace disassembling) using API instead of RCore.cmd
* Fix #14258: Issue with upgoing refline at XREFS
* Fix CL command and make asm.dwarf work without source files
* Fix asm.varsub in a hacky way to fix the disasm output
* Fix project's asm.cpu behaviour
* Priorize strings in case multiple metas match
* Set the RBinSection.format as dwords for the constpool in DEX
* Initial import of the RISCV capstone plugins for asm and anal
esil
* Skip {urc}{jmp,call,ret} in aesou
* Fix issues with negative esil.timeout values
* Fixes related to ARM64 ESIL emulation
* Make $r{} work without the debugger
* Add cmd.esil.stepout to run r2 commands (before and after emulation)
* Fix recursivity issue when calling aes in cmd.esil.step
* Fix cmd.esil.step handling of return value
graph
* Implement fg command to create a graph of flags (WIP)
* Implement graph.ntitles to toggle graph title nodes
hash
* Initial implementation of pasasword generators under /Cc
* Fixes for fletcher8
* Add support for fletcher8, 16, 32 and 64 hash algorithms
heap
* Implement GetSingleSegmentBlock for LFH and VS Windows heap
json
* Use asserts in pj api to catch this issue earlier
meta
* Fix CC-, CC-* and CCf- commands to work as expected
network
* Handle R2_CURL env var in RSocket.httpGet
panels
* Add more configs for disassembly are supported in the menu
* Emulate menu is added
* Settings menu is added, and decompiler is configurable in there
* Something like Ctrl w + T in vim implemented
* Almighty menu has got debug items too if it is in debug mode
* Search->Cursor->Xref/Ref enabled
* Cursor works better in many panels
* izz~ and iz~ available from both the menu and " modal
* Force cache the result of Decompiler and Graph panels plus better auto updating, and refactoring
* Cut out the widget as a struct and name it Modal
* Enable deleting an item from the list in " widget
* New item can be created and inserted to the '"' widget.
* Centered the '"' widget plus v and h commands are added to it.
* Added l command to the console which works like Ctrl l and Refactoring
* dwm style default layout
* Implement Console frame in visual panels
* Enable creating a panel from the list of all kind of the panels and replace the current panel with it
* Autocompletion is supported for Breakpoints and so is cursor to seek to and del them
* Cursor is available in strings panel
* Cursor is supported in Symbols panel
performance
* More code cleanup in RBin, speedup method resolution
print
* Honor hex.section in prc and pxa
* Implement pV command - like pv but for bytes instead of values
* Fix pv [arg] behaviour
* Added support for pd and px without space
* Honor hex.section in pxW and pxQ
* Honor hex.section in pxb
* Improve pxr for null words and relocs and use hex.section in pxs+pxr
* Fix #14250 - ps[puzwW+]j
* Fix #14263 - Add hex.section option for the hexdump
* Add Objective-C and Rust (pco, pcr)
* Add Kotlin, Java and Swift pc sub-commands
r2pm
* Honor the 2nd arg of R2PM_TGZ with ZIP files
refactor
* Change the signature of r_str_trim to avoid confusions
* Deprecate the RBinObject.id field
* Rewrite the RBuffer API to make it safer and adjust the codebase
refactoring
* Deprecate the RBinObject.id field
remote
* Improve the r2web:// IO plugin and fix a couple of bugs in there
* Speedup r2web://
* Make -C http work like the tcp and rap remotes, expose the shell via ==
* Honor rap.loop in rap server and add examples in =?
* Fix issues with the tcp server .: and =+tcp, use index instead of fd
* Fix some UAF in rap server, handle HTTP over rap and tcp properly
search
* Fix #14403 - Fix search on multiple maps (#14405)
* Add /cc for case insensitive instruction
* Add search.in=bin.segment[.s[rwx]] and fix bin.section[.s[rwx]]
* Fix hexpairs search containing whitespace
* Fix /r for dalvik and enable VA
shell
* Handle e cmd.pdc=<tab> and improve e cmd.pdc=? autocompletion
signatures
* Improve zignatures
* Make zignature comparison fuzzy
* Implement the zc command
trace
* Sort dte output
visual
* Improve the vv mode for editing variables
windows
* Fix command redirection
* Dynamically find radare2 install dir on Windows
* Add mfc100u and a script to generate them
* Set scr.ansicon=1 if running under Windows 10 Creators Update or later
* scr.ansicon=2: Show esc seqs (for debugging) if using non-ConEmu-hosted cmd.exe
* Fix QueryDosDevice returned length check
* Fix ood; ood bug on winxp->win10
* Fix r_sys_pid_to_path (supports winxp -> win10)
* Tue May 21 2019 Daniel Molkentin <daniel.molkentin@suse.com>
- Update to version 3.5.1
* Fixed hardware breakpoints in the native Windows debugger
* Introduce the new scr.prompt.popup and honor it in all the color themes
* ESIL emulation is now 2x faster
* Fixed a huge performance regression when generating zignatures on big binaries
* Fix iOS, Android (non-arm64) builds with new NDK
* r2frida comes with Frida 12.5.3 (v8 enabled by default and working on iOS + Android)
* Upgrade capstone and capstone5 dependencies
* Improved cursor mode in panels
* Initial ESIL emulation for RISC-V
* Fixed C output for nested structs/enums/unions from pf strings
- Update to version 3.5.0
anal
* Initial support for src/dst RAnalOps for ARM
* Add anal.ex option, cleanup and improve the Java support
* Add aae in aaaa
* Add disasm field to ao command output
* Fix the arm/thumb switch emulation bug spotted in capstone5
* Stop analyzing call to reloc and fix pifcj to honor asm.jmpsub
* Fix aaft Stack isn't initialized and run aaft after aaaa
* Fix fcn.rip regression
* Fill op->src[0] and op->dst in x86 and improve arg analysis with it
* Include aap in aaaa
* Add the ability to set some registers readonly
* Fix #12867 - Identify BP usage in x86 functions to improve var analysis
* Initialize GP on MIPS when no symbols found with ESIL
* Implement ESIL for CPUID on x86.cs
* Implement /am and add initial support for PAC instructions
* Honor more anal hints in the anal loop
* Add anal.ignhintbits to only obey asm.bits and ignore hints
* Optimize r_anal_try_get_fcn by removing fixed size buffer
* Add an option for anal.loads
* Load instructions now set a data meta
* Fix #13596 - Implement afb= and afl= and do some refactor
* Add more fcn types, new api r_str_fmtargs and af- is af-$$
* Add instruction refs array in pdj and agj, for r2dec
* Make agj work in any offset inside a function, not just the first instruction
asm
* Asm assemble, mem leak fixes
* Fix x86.nz assembler for the rip-relative LEA
* Mips asm mem leak
bin
* Fix isStripped() bit for PE bins
* Seek to the first executable section if there's no entrypoint
* Implement COFF imports and honor no-entry0 case
* Implement mw command and fix segfault on old fs support
* mdmp: fix incorrect data setting in pe sections
* Use HtPP instead of Sdb in r_bin_filter_sym function
* Optimize class_get() to make demangling and objc/dex registration O(1)
* Restore io buffer creation in dyldcache
* Fix rahash2 -B and -b regression not printing partial hashes
* Fix heap overflow in macho parser
* Add 'oba [addr] [baddr]' command handler when m != b
* Fix oba command when called with only one argument
* Improvements for rabin2 -H and pfo in macho
* Fix ELF main detection for ARM binaries
* Add ELF Identification fields to elf64 pfo
build
* Automatically choose wget/curl/git depending on availability
* Fix #13765 - asm/anal cant be build in parallel
* Do not use system-wide capstone when building with sys/install.sh
config
* Code cleanup in RConfig and bring back 'e asm.' for listing
cons
* Fix #13980 - Glitch in panels with bgcolor
* Code refactoring for the theme based colorization to reduce derefs - dmh commands set
* Use RPVector in RLineAutocompletion
* Make p= bars dont use the background color
* Code refactoring the theme based colorization to reduce derefs
* Fix #13738 - Autocomplete $aliases
core
* Few mem leak fixes
* Implement yq,yj,y*,y! and b*
* Fix binary number to ut64 conversion
* Implement @@@Strings iterator
* Fix #13823 - Implement ftj and ft* commands
* Fix 'e cmd.gprompt=dr=' becaues of the strtok approach
* Fix bug when quoting a comment
* Add scr.confirmquit to actually "Confirm on quit"
* Implement fq. fj. and f*. - show flag in current offset commands
* Implement the missing bits in the triple-at
* Add ooc, o., o.q and rename old o. into o:
* Print "Task finished" only if interactive
debug
* Implement aesuo and add help for all those step until subcommands
* Initial implementation of dr. and ar. commands
* Implement drc k=v to set conditional flags by type
* Fix dg in Linux by using r_debug_ptrace instead of ptrace
diff
* Added missing c2 command + theme support for comparison commands
* Initial import of the WIP zdiff algorithm
disasm
* Enable capstone5 at configure time option
* Fix #13975 - aho issue not showing bytes
* Honor asm.pseudo in 'pi'
* Add asm.optype
* Honor ec flag in colorized disasm for names vs numbers
* Do not switch to v8 by default
* Implement 'piu' by deconstructing 'pdp'
* Demangle relocs and add asm.flags.{inline|limit|maxname}
* Fix asm.meta issues when asm.flags.inbytes is set
* Fix another bug in asm.jmpsub
* Fix #13672: Display variables value in the disasm view
* Add asm.xrefs.code option to show/hide code references in
* Add some more x86 instructions for pseudo
* Honor anal.ignhintbits for hintbits
* Honor fcn->bits in disassembly
* Update capstone to use the NEXT branch
* Enable asm.jmpsub by default
* Add asm.fcnsig instead of making function signature depend on asm.var
esil
* Remove unnecessary RPICK in avr.esil
* Few UAF fixes
* Add esil_weak_eq and make an operation
flags
* Add json output to "fd."
* Call remove_offsetmap only if the flagItem is not new
* Add realname flag command
* More improvements in the current flagtags and ftl->ftw
* Implement ftl and add more flag tags
fs
* Improve the RFS API to support write and unlink operations
* Implement mlj to list files in json
* Implement mj and improve 'm / io' vs 'm io /'
graph
* Fix agfg - GML output format fails with high-ids because of Java
* Improve the graphviz output for traced bbs
io
* oob [arg] sets bin.baddr, then seeks to new entry0
panels
* Naming tabs is supported
* Fix dc and F9
* Status should be shown on top of the screen
* Improvements in panels for usability
* Filter is supported with command f/F
* Decompiler default off for everything especially tabs working better this way
* Better key allocations for tabs
* Initial support for tabs
* n/N should behave like the ones in visual which are for go next nkeys
* Auto update synced with every mode change is supported
* A panel will be allocated for each help msg when it is called
* Help menu is classified better and help panels are implemented
* t key is supported in both window and zoom mode
* n/N commands are supported in window mode
* t key is supported in Function panel
* Better algo for t and it is supported in hexdump too
* t key support for entropy
* t key instead of tab key is supported in Disassembly panel
* Comments work in Disassembly panel
* Interactive message for cursor and insert mode
* ioCache menu works
* Do not ask yesno for decompiler if it is not even available
* Show meaningful messages for invalid operations
* n/N splitting a panel vertically/horizontally with new user input cmd
* Show if the cache is on or not on each panel
* Fix some potential memory leaks
* Toggle cache boolean of a panel by &
* Default positioning was not just right
* instead of [x] to honor the command of deleting a panel
* C in panel should behave like the one in visual too
* Add summary and Entropy fire added in the menu
* Entropy fire added in the menu
* add Summary under View menu as well
* Better page scrolling for JK
* Refactoring plus a little tweak for HL and some fixes
* Auto update decompiler
* v!g instead of v!o for consistency
* Refactoring for performance issue part1
* undo/redo seek enabled.
* Opt the decompiler in panels
* Fixed a few bugs
* SAKURA instead of SNOW since it is April:P
* Handle rotateAsmEmu via ')' in Panels
print
* Add p=a, p=A (and p==a, p==A, prc=a and prc=A)
* Fix hex.cols usage in prc and pxA and add pxAv for visual
* Fix #13880: Add dt=
* Implement pfc normalized types and values
* Add scr.bgfill config option
* Honor color theme in p==
* Fix p== in debugger (only processes current map)
* Add scr.square and implement the prc= command ala pz,p=..
* Implement 'less' command and add 'l?' command
* Move pava from core to print and honor it in pxa
* Implement pfc C struct format command
* Fix large disasm issue with invalids and handle @{xfs}
* Hide switch/case refs from pds
* pf z honors scr.strconv and str.escbslash
r2pipe
* Add support for r2pipe shellscripts
search
* Fix #13988 - Add JSON output format to rafind2
* End of archive detection in rafind2 -m
* Avoid scanning the whole -1 address space. Fixes aap in debugger
* Android magic numbers until Android 9.x
* Add io.sky and solve io.maps.x issue happening with aap
* Fix #13321 - Make /ci [from] [to] find immediates in range
* Fix search asm boundaries issue
sign
* Make zignatures database more flexible, add realname, comments and xrefs
sync
* Initial rework towards bringing back remoting commands
traces
* Introduce dtdi and update help message
types
* Add vvs command to edit function signature from visual
* Implement more tx subcommands (type-xrefs)
* Implement afs! to edit current function signature with cfg.editor
* Added a command to edit types using cmd.editor
* tfc->tcc and tcc in sync with t*c
* Fix afs command, parsing, behaviour and help message
* Add more basic types from libc
* Fix null deref in types when invalid db and add more basic libc
visual
* Improve visual mark
* Implement graph neighbourhood navigation with i and I keys
* Move the esil debugger into vbE
* Improve the visual ropchain editor
* Fix cursor jk in disasm and debugger visual modes
* Make scr.gadgets true by default
* Make 'o' do the inverse of 'O'
* Fix #13673: Sort column results in vbg
* Fix #13713 - vr rotates between JMP, CALL and DATA reference hints
* Fixes for flagzones and scr.scrollbar
* Add scr.scrollbar.bottom
* Fix callgraph browsing and node folding glitches
* Handle /* in reg/stack cursor in debugger view
* Handle +- keys to increase/decrease register value
* Honor scr.scrollbar in visual graph
windows
* Convert Windows error message to utf8
* sys/meson.py: Create r2.bat as alias to radare2.exe
Other commits
* Release 3.5.0 - Dismay
* Upgrade to use sdb 1.4.0 (#14045)
* wget/curl downloads use CS_ARCHIVE
* Code cleanup in capstone.sh
* afu: improve usage text and argument handling (#14044)
* Tweak documentation for afu to indicate its argument is mandatory.
* Detect missing argument in afu: Error out if afu is called without its mandatory argument.
* Improve argument parsing in af, afr and afn. (#14042)
* We now skip leading whitespace when looking for the first argument
* to these commands (the function's name). Previously, the following
* command
* af fcn.foo @ 0x000affe
* would try to define a function with an empty name at offset
* "fcn.foo @ 0x000affe".
* Improve error messages used by afn and afr. (#14039)
* When renaming a function fails because no such function exists
* at the given address, don't include the new name in the error message
* as it is unrelated to the cause of the error.
* Couple of mem leak fixes proposals. (#14038)
* Trim spaces in pfo
* Special symbols $a,$d,$t could also have a '.' + a number
* Let's ignore the number for now, it shouldn't cause too much issues.
* Fix PPC regressions
* Update capstone v4 and next branches
* Fix pifcj issue
* Hide esil warning under esil.verbose to please users
* Fixed missing parameter for linux i386 (#14026)
* Honor the entry0 flag and other bug fixes
* Fix crash in -n
* In fs_r2: /seek and /bsize and fix flags and config writes
* fs.shell supports echo and redirections '>'
* Fix some warnings
* Fix LGTM builds
* Add LGTM configuration file
* Ability to download capstone git as zip
* Add ?|? to root help
* Fix ASAN crash (1byte oobread in dex)
* Use SPCL instead of SPECIAL_SYM
* Fix issues related to meta.range management
* Fixes #133660: Dword in the middle
* Current java implementation of the analysis is not working well
* RBin.Java doesnt updates the vsizes because it seems to break things. wip for another PR
* Added anal.ex option to use extensions or not
* Install r_agraph.h with meson (#14005)
* Improve |? (#14003)
* Minor code cleanup in flags and bin (#14000)
* Fix appveyour thing
* Call remove_offsetmap only if the flagItem is not new
* It does not have sense to call that function on new FlagItems, it just
* slows down things for nothing, since item->offset has not been set yet.
* force and is_new must be two separate things
* When setting a flag (which may be even a set of some properties of an
* existing flagitem) we want to force the update of all the RFlag
* properties, but remove_offsetmap should not be called when the flagitem
* is new. So we need to track the two properties separately.
* Fix some warnings in the linux-debugger code
* Revert "Fix crash in r2panels config" (#13995)
* This reverts commit 9a1965f.
* Fix crash in r2panels config
* Fix a bug (#13992)
* #include sdb/ht_uu.h after r_types.h (#13989)
* Fix capstone5 meson build
* Fix crash in swift demangler
* Add --with-capstone5 configure flag
* Add use_capstone5 meson option
* Add prc=a in visual
* So pointers get rebased transparently during buffer reads. This makes objc class parsing work again.
* Fix #11385 - load offset from project
* Refix
* Fixes for ppc analysis with capstone5
* ADD BP and SN for the ppc reg profile. Also fix some null derefs on invalid esil expressions
* Hide warnings
* Fix vvs and make :> work again to create empty files
* Fix bugs of cursor for hexdump in panels (#13978)
* Fixed a few things (#13974)
* Fix tons of bugs of cursor for disassembly in panels
* Improve visual panels interaction
* " to create a new panel without using window mode
* X must always close a window, use xX to access refs
* Implement v!t- to delete last tab
* Implement graph.dummy for toggling the creation of dummy nodes
* include uint32/64 in JSON output
* add uint32 and uint64 to ? output
* Implement search.in=file
* Improve help msg for "." (#13961)
* Refactoring (#13955)
* Fix wtff + argument 0 size issue
* Fix lang_pipe_run hang in Windows (#13960)
* Fix lang pipe hang in Windows
* Fix hang and double-free
* Fix ml/mL/Lm inconsistency
* Fix warnings on Windows (#13954)
* Fix comments in panels (#13953)
* Add macos pkg uninstallaton script instructions
* Fix a small bug
* Fix prc text color
* intro.md: Fix typo
* Typo in "Begin" fixed
* enable ctrl-r to perform backward search
* fix up/down array backward search
* Fix a bug of colors menu
* Show which ascii char is in drr output
* Fix null deref in canal.c
* Fix crash in dmh on Frida
* Fix a bug
* Sign hash, possible mem leak fix. (#13942)
* Avoiding creating an entry if the type is not known (at the moment).
* Fix ms double free crash (#13938)
* Fix missing newline
* Fix #13931 - Do not memref mmxwords in LEA
* Fix wa* command
* Prevent extra blank line from stderr when using @@= with backticked prz (#13935)
* Colors menu improved a lot in panels (#13936)
* Improve the bold theme a bit more after testing on another projector
* Fix a bug in menu and remove unused code (#13933)
* Add help msg for tn-
* Do not psuedo the visual ropchain
* Fix null deref
* Tabs in panels work heaps faster now (#13929)
* Refactoring and fix a stupid regression (#13928)
* Refactoring more (#13926)
* Fixes #12100: wtf! warns when file size is unknown (#13925)
* Restore the seek when doing aggv to fix a random bug
* Fix UB in esil shift
* Use our own instance of RAnalEsil to fix a crash in aeg
* Refactoring tabs (#13924)
* The bit editor is now accessible via the visual browse mode
* Improve visual assembler usability
* Remove dup aae
* Add help msg for om-*
* Fix glitch in 0 width frames in panels (#13912)
* Sample: clusterfuzz-testcase-minimized-ia_fuzz-5651817880354816.dms
* Fix #13907 - pd 1;pdj 100;pd 1 bug
* Merge pull request #13910 from Vane11ope/vane11ope/panels_1
* Refactoring and improving help msg, Fixing a few bugs etc
* Fix null deref in vbg
* Fix help msg for $dis?
* Expose r_core_autocomplete() to the API
* Decouple Autocompletion from RLine
* Fix more bugs and add some missing functionalities to the window mode
* Fix a small bug (#13896)
* Fix pf? <fmt_name> (#13892)
* Initial work on refactoring RParse
* Fix r_vector.h for C++ build (#13890)
* Use RPVector in RLineAutocompletion
* Fix argc+argv init and clear in RLineCompletion
* Minor changes for RLineCompletion
* Check for completion
* Make r_line_completion_set_weak use argc+argv
* Use only RPVector in RLineCompletion
* Reserve in r_line_completion_set
* Add r_pvector_data() and r_pvector_index_ptr()
* Remove r_pvector_set_free()
* Fix pfs handling of {times} (#13884)
* Fix naming of the public RLine autocompletion callbacks
* Fix code injection issue in ir* and is*
* Fixed help text for 'o' and 'G' keys in v! mode (#13875)
* Use more current enum elf_machine (#13874)
* Win PE format, mem leak fix (#13873)
* remove PICK/RPICK from esil
* remove last use of PICK
* remove one use of PICK from sh-esil
* Set overflow flag if pfj z string overflows (#13865)
* Little mem leaks fixes (#13866)
* Make couple of keys toggle-able (#13864)
* Fix 1oobread crash in fire bars
* list all types in current function
* list all types in program
* create a types graph
* list all functions using the given type
* Something gone wrong with t key in the stack panel (#13851)
* pf z, io.unalloc=true: Abort map check loop if the size-0 map is encountered (#13843)
* Fix inappropriate if checks in panels
* Fix a bug when pressing t in decompiler (#13838)
* Changed can_affect_bp a little
* Fixed xor reg, reg issue
* Small fix in rargs detection
* This is more like a workaround
* In graph, = sets cmd.gprompt and | changes layout, step centers graph
* t key is supported for register panel
* Mark pf z strings that overflow into unallocated memory with "ovf" (#13829)
* Mark pf z strings that overflow into unallocated memory with "ovf"
* Use RIOBind instead
* Put cheaper test first
* Check map read permission as well
* $ r2 -c '"w hello # world"' -qcps -
* Add s110 to list of OS in asm.os=?
* Fix b command parsing (show help if subcommand is invalid)
* aa* -> aaS
* Do not run aap twice in aaaa
* Add missing help for aaf?
* Add missing entry in the flag/d/meson
* Minor fixes
* Fixing most likely a typo (#13817)
* A few refactoring in panels
* Fix build
* Do not use defines
* mach0 dylib: addr + 16 was the right address
* Fix r_buf_get_string implementation
* no_null -> overflow
* Improve the lima theme
* This LC_SYMTAB handling is wrong
* Initial import of the esil-graph command by @condret
* Also fix ob command to switch between different objid
* Press Enter on menu is properly fixed
* Fix print_string for Windows (#13800)
* Fix coredump PC not being considered (#13793)
* Fix infinite loop and memleak in dex (#13794)
* obL is an alias for iL
* Rotate between call/jmp/lea in graph and panels with 'r'
* "char* " -> "char *" in format.c
* Add to pfj z TODO comment
* Fix esil test that I broke yesterday (#13777)
* Fix #13674 - Graph nodes doesn't need to be updated if there aren't any
* Added missing help text for 'db*' command (#13774)
* Fixing possible dangling pointer for str empty macro (#13769)
* #if-0 out some not-working-as-expected code
* pfj z honors size (#13761)
* Improve r_buf_buffer and remove r_buf_get_at (#13676)
* Make r_buf_buffer return a ut8 and the associated size of the buffer
* Remove r_buf_get_at uses and make it static
* @b: overrides the anal hints again (#13756)
* "char * " -> "char *" in format.c
* No bgcolor in the sepia calls
* @@@ # foreach offset+size iterator command:
* x @@@= [addr] [size] ([addr] [size] ...)
* x @@@b basic blocks of current function
* x @@@c:cmd Same as @@@=cmd, without the backticks
* x @@@C:cmd comments matching
* x @@@i imports
* x @@@r registers
* x @@@s symbols
* x @@@s sections
* x @@@m io.maps
* x @@@m dbg.maps (See ?$?~size)
* x @@@f flags
* x @@@f:hit* flags matching glob expression
* x @@@f functions (set fcn size which may be incorrect if not linear)
* x @@@f:glob functions matching glob expression
* x @@@t threads
* x @@@r regs
* Fix elf-arm-main regression
* Fixed help text for visual seek ('o' ->'g') (#13748)
* Remove use of RPICK in sh-esil (#13747)
* Fix RAnalOpMask.ALL (#13743)
* Fixing aab (#13741)
* Fixing aab
* Update blaze.c
* Fix pfj z when z is not at struct start (#13740)
* Preventing two little segfaults in zdiff
* Use r_str_escape_utf8_for_json() for pfj z (#13734)
* Remove all remaining uses of RPICK in avr-esil (#13733)
* Fix memleak in aef
* Fixed help text for 'Z' in visual graph mode (#13732)
* Put pfj z string in value field (#13729)
* Fix crash in rasm2 -a 8051 -d
* Add value and label (if available) to pfj enum (#13728)
* Fix pfj enum when label is not available
* Remove some spaces in format.c
* Fix potential DF and irrelevant resource freeing
* Rollback to capstone4 until all bugs get fixed
* /am is like /c but only search for instructions and uses R_ANAL_MASK_DISASM
* Added new op family: R_ANAL_OP_FAMILY_PAC; (see /af)
* Fix meson build of capstone
* added bswap to esil in x86
* more RPICK removal from avr esil (fmuls and fmulsu)
* more RPICK removal from avr esil (mul and fmul)
* Handle comment, prompt and other keys in visual, zoom, cursor modes
* Do not show the anoying 'cannot undo/redo seek' in panels
* Several usability improvements for panels
* More refactorings and bug fixes for panels
* Replace pointer with an array of variable size (#13706)
* The elements are directly after the headers, there is no pointer
* involved.
* Also, use r_buf_read_at instead of r_buf_get_at in mdmp.
* HL for move horizontally by a page (10 chars) in panels
* Zeroize oldslide when leaving top-level pf
* Couple of new fortunes.
* Use NESTEDSTRUCT instead
* Add tsd/tud/ted/tcd subcommands
* Add newlines to tsc/tuc/tec
* Honor asm.jmpsub in pdj output (#13701)
* scr.scrollbar (0=no,1=right,2=top,3=bottom)
* Cleanup avr-esil for inc and dec (also RPICK-removal) (#13693)
* pfj: Remove errorneous ]}, after struct nested to 1 level (#13691)
* Fix random crash on x86.cs on exit when used with r2frida (#13692)
* better leak on exit than crash in capstone/frida
* More RPICK removal in avr esil (#13687)
* Fix #13653 - crash reproduced randomly in graph with white2 theme (#13685)
* arm: Remove redundant op->type assignment (#13683)
* Fix menu focus colors in panel menus
* Rename Pseudo -> Decompiler in panels
* Deprecate esil_write_internal
* $z, $b, $c, $p, $o, $s, $ds, $jt, $js, $r, $$ are now ops
* Remove R_ANAL_ESIL_PARM_INTERNAL
* Fix segfault and trim whitespaces to fix pd @x:9090
* Use maps and io.va=1 to make it work instead of hacky memcpys
* Fix p8f and bring back core->fixedblock to make pd/pD@x:/len work again
* When in cursor mode in the debug visual view select the reg with tab+arroows
* arm: Improve glibc entry point signatures
* Two changes:
* Add signature for old gcc (4.6) that uses ldr/str instead
* of push/pop.
* Mask out the Thumb bit from main's vaddr.
* arm: Cleanup br instruction handling
* The cleaned up code fixes the following issues:
* "bx pc" should always change to ARM mode (bits=32), never
* Thumb mode (bits=16), since PC is always even.
* Use (addr & ~3LL) + pcdelta for all PC-relative arithmetic.
* and removes checks for "b reg"/"bl reg"/"bx imm"/"bxj imm" as
* these instructions don't exist.
* arm: Move brace postfixing to bottom of function
* The analop_esil/analop64_esil functions have to wrap braces around the
* ESIL expression if there's a condition code. Instead of only printing
* the closing brace on certain instructions (which may differ from
* arm_prefix_cond one day), print it regardless of the instruction.
* arm: Move op analysis from anop_esil to anop
* This matches how other archs do it, such as x86.
* Sync elf_machine enum in elf.c with elf_enums pfo
* Increase autocompletion to 4096 (#13662)
* Blindfix #13659 - crash in aao with a fuzzed macho
* Add version information to libr_main
* Add workaround to fix pfj test output
* elf.c: Update -nn header format (#13657)
* Use more r_return and a lot of code cleanup, but still not finished, more PRs to come
* meson: Change completions installation directory (#13647)
* meson: Fix deprecation warning in libcore (#13646)
* cconfig.c: Remove dup line and capitalize for consistency (#13645)
* Hide one more emulation warning under esil.verbose
* Invalid asr shift of 32 at 0xdbb6
* Fix 2 crashes found with asan in the hexdump
* Done some TODO refactorings in panels (#13630)
* Thanks to anal.types.verbose
* Fixed crash when doing aac and bin->cur is NULL (#13621)
* Needed for r2dec
* Add types for android-log apis
* Add function signature for memmem
* Add r2white doc/img
* Improve the gentoo theme
* Add gentoo theme
* After release version bump
* Tue Apr 02 2019 Daniel Molkentin <daniel.molkentin@suse.com>
- Update to version 3.4.0
anal
* Add more function sorting methods and reduce unnecessary resorts
* Fix #13466 - Adjust thumb xrefs on aae
* Fix axf without args
* anal_riscv: Implement get_reg_profile
* Fix #13451 - make afs work
* Show destination in axf
* Analyze symbols of type STATIC
* Add R_ANAL_OP_MASK_DISASM for r_core_anal_op() for now
* Reduce false positives in aav honoring align and skipping code blocks
* Remove CALL_IS_EOB, it was experimental in r1, not useful
* Add warning message when jump table size is invalid
* Fix #13077 - calling convention args to start from 0 instead of 1
* Add avrr and aao in aaa
* m68k architecture is always 32 bits and big endian
* Implement jmptbl for Thumb TBB and TBH instructions
* Fix m68k analysis issues
* Add R_ANAL_OP_MASK_OPEX
* Add support for Thumb jmptbl based on TBH
* Fix glitch found in analyzing jmptbl in debug
* Avoid passing fixed size buffers in RAnal.fcn, reducing the use of anal.bb.maxsz
* Fix r_reg asserts issues spotted in the mips emulation
* Remove redundant key in anal/cc
* Simplify function guessing
* Add missing ESIL for ARM64's LDRH instruction
* Fix null string issue in afi and add afcf in afij
* Use ARM special syms as analysis hints (#13249)
* Use fcn->meta.min instead of fcn->addr in fcn rbtree code
* Fill ptrsize for TBH and TBB Thumb/ARM instructions
* Update register profile for m68k
* Update Windows type db
* x86: add ESIL for BSF/BSR instructions
* Implement new aesou and abte commands
* x86 afb+: Update size in fcn rbtree after adding bb
* Support another type of jmptbl for x86-64
* Add fp register as BP in mips analysis
* Improve CHIP-8 analysis
* Add Windows types from synchapi.h
* Add Windows Crypto API types
* Update Registry API types
asm
* New command: 'wai' write assembly inside the current instruction
* Initial implementation of the .offset RAsm directive
* Updated ppc's libvle with latest fixes
* Add asm.refptr eval variable
* Implement rasm2 -x to output in hex dwords
* Add CHIP-8 asm descriptions
* Fix #13208 - Initial import of the asm.null plugin
bin
* Add dex.h and cdex.h for header structs
* Parse segment name in -H, deprecate 2 old load methods
* Adding symbols for 32bit version of mfc140u.dll
* Fail kernelcache check for non-arm64 kernels
* Use entrypoint from LC_UNIXTHREAD for the Kernelcache
* Fix integer overflow that leads to a crash in the DEX parser
* ELF: returning the full compilation toolchain info
* Added load_buffer and check_buffer for qnx (#13446)
* Rebase strings when necessary
* Rbin remove old load_bytes callbacks
* bin_art: avoid double free
* Compute file hashes on request via it and compare if has changed
* Add bin_qnx.c in Meson.build
* Add Homewbrew detection
* Import the XNU kernelcache RBin plugin
* Add initial support for QNX executables
* Adding OpenBSD elf sections
* Fix #13157 - Invalid read in r_bin_demangle_swift
* Parse objc categories
* Fix mach0 relocs when no symtab is there
build
* AppVeyor - Update MSVC to 2017, Ninja to 1.9.0
* Fix compilation on Android
* Fix offline build: Remove duplicated curl line
config
* Change anal.maxreflines to asm.lines.maxref
* Fix #13201 - Merge anal.jmp vars fix
cons
* dm= now honors theme (eco) settings + wx sections are highlighted
* Added missing flags & file paths autocompletions
* Add more file paths autocompletions
* Added missing autocompletions for breakpoints related commands
* Add prompt handling in r_cons_gets
* Add missing autocompletions for e and P subcommands
* Add missing keywords for tab completion
core
* Make flag comments base64-compatible
* Support alias files in '.' interpret too ('. $foo')
* Implement $foo=- to use cfg.ediitor to edit the alias
* Initial implementation of alias files
* Fix wcr command
* bin.str{purge,filter} -> bin.str.{purge,filter}
* Rename asm.bbline to asm.bb.line and disable it in graph
* Create libr_main and make all binaries use it
* Introduce anal.verbose and set http.verbose and bin.verbose to false
* Make function to allow grabbing the flags by order of importance in flagspace
* Fix va_arg issue in r_str_newf and r_str_appendf
debug
* Fix #13363 - Remove URI handler before looking for auxillary script
* Some fixes for the debug/emul traces and initial visual mode
* Fix #13391 - issues when using file:// and ood together
* Displaying chunk flags as bits
* Implement dbg.skipover and fix dss for esil
* Documentate and fix 'afa' and 'afal' commands
* Implement V$ to set the program counter
* ASLR settings little refactor, available as util mean
* Initial implementation of the dri command - inverse debug registers
* FreeBSD will be having aslr finally
deprecate
* Fix #13430 - Kill MinGW remnants
diff
* Implement the dif command to compare two files using unified
* Fix #13541 - Automatic radiff2 -p when no bininfo is found
disasm
* Call to same relocs must have same name instead of appending number
* Improve pf visualization via Cf in pd
* Fix #13502 - alignment of .dword things
* Remove reflines2
* Fix bugs on E_MASK_D and BD24 (343eeb9) powerpc/vle
* Fix printing consecutive type links in pd
* Support asm.pseudo=1 in pad command
* Sync with libvle (bugfixing & new instructions)
* Fix #13412 - Improve folded-bb message
* Fix asm.stackptr when disassembling in the middle of a function
* Add support to fold basic blocks in graph, disasm and commandline
* Add chip8 pseudo support
* Implement UJMP/UCALL color and update themes
* Fix #13326 - Implement of asm.regsub to replace register names with their role alias
* Implement visual decompiler and fix the RConfigHold API
* Show function signature on tailcall jumps
* On ARM, labeeling the unwind address segment a bit more accurately
docs
* Updating which assert version to be used
esil
* Add cmd.esil.step
flags
* Add symbols.objects and symbols.sections flag spaces
format
* Fix #12041 - fix truncated pf output
* Add pfo dex|macho and bind structs to offsets with Cf via .iH*
fs
* Rename mg to mc and implement 'mg' properly
graph
* Handle b key in graph, doing the same as in visual
* Improve interactive graph title with function signature
* Implement graph.trace and improve dt+ with dt++ for abt
* Trim decompiler text in graph nodes
* Implement support for decompiler graphs in 'v #'
hexdump
* Support colors in prx (abusing px)
io
* Consider the map sorting when two map_events are the same
nds
* Add Homewbrew detection
optimization
* Add an early-out optimization for r_isprint (2%-30% speedup)
* Optimize r_str_bounds by removing an unnecessary strdup
* Avoid unnecessary RConfig.get('cmd.times') in RCore.cmdSubst
panels
* pP rotate panels
* ROP gadgets work properly when in-n-out
* Fix some crashes
* bunch of menus work which had been broken such as ROP, etc
* Submenu is also highlighted
* Menu should not be highlighted when it's not focused
* Fixed some critical issue in resizing
* Panels move more flexibly with HJKL
* Remove some useless messages on the menu
performance
* Remove redundant section lookup in get_strings_range
* Improve console rendering times
* Make analysis use io instead of fixed size buffer
* Optimize analysis by adding more fine-grained levels
print
* prc honors io.unalloc
* Implement p-e (entropy bar)
* Fix #13323 - Skip nulls in pxr
* Show negative reference in pxr, honoring asm.bits
projects
* Fix #13252 - Fix path with spaces in projects
rbin
* Change printf to println
refactor
* Fix #11133 - Remove buf_hex frield from RAsmOp
* Pass RAnal instead of rbtree to fcn rbtree api
search
* Fix infinite loop in /r, and optimize by not resolving vars when not needed
* Make -x behave like /x unless mask is provided
sync
* Fix #13234 - Allow reopening of webserver
* Fix debug rap reg profile setup
types
* Fix #13585 - Changes to tl
* Load basic types on startup instead of onload
* Add the ability to open .h files with the 'pfo'
* Add txf and txf. commands
* Add a command to list all used types in current function
* Add err* noreturn functions for Linux, iOS and macOS
* Fix #13247 - tn and tn- commands
visual
* asm.var.summary should be on if the screen is too small
* Fix #13333 - Show flag zones in scr.scrollbar
* ^F,B in visual is used to scroll pages not bytes
* Add Vvvt - visual function var types
* Improvements in vbg
* Vpp"c now properly rotates
* Visual 'k' honors asm.flags.middle
* Fix visual mountpointss, move it into Vb
* Save changed bytes after modifying their bits in vd1
* Several improvements in vbg
* Fix #13283 - Swap g<->o in visual and graph
* Improve visual tabs switch with decompilation mode
* Fix graph.layout=1 issue when zoom < 1
windows
* Refresh on resize and fix mouse input on visual foor Windows
* Fixes pipes implementation on windows
* Add support for UTF console input in Windows (#13338)
* Fix #13301 - Fix crash when unicode support is enabled
* Alias /dev/null to NUL in Windows
* Fix dll_ symbols not being analyzed with aa
Other Changes
* Add a call to r_search_kw_reset in r_search_prelude to fix arbitrary heap oob write (#13605)
* Enforce 32bit and jumps for VLE-PPC
* ec* shows bgcolor too for fgbg color (#13602)
* Asan fixes 3.4.0 (#13603)
* Fix OOB writes in bin_qnx
* the formats specified in buf_fread were wrong
* fixed some memory leaks in bin_qnx
* Another tcc crash fixed (#13599)
* Fix wrong chopping issue in Cf (#13584)
* "Cf 1 xxx" <- spaces was not trimmed
* Should be aliased under the c command
* prc: Don't Color_RESET if scr.color=0 (#13594)
* aflsa, aflsb, aflsn, aflss - sort by addr, bbs, name or size
* Fix help message for rabin2 -h | grep str.filter
* Fix uaf in config hold (#13591)
* Fix aflm crash (#13592)
* Fix oobread in aao
* Fix Visual jk - prc interaction (#13578)
* Fix iCj for PE (#13579)
* Fix #13491 - Handle $aliasFiles in 'cat' and 'rm'
* Remove some whitespace from cmd_print.c
* Add get_reg_profile call for RISC-V. In this profile, include the
* integer and floating point registers. Use the ABI register naming
* instead of the architectural one as this was chosen in the disassembler.
* This is straightforward as the user-level ISA only specifies these
* registers. In RV-I there are no flags, and only a few read-only
* counter CSRs are accessible from user mode which (I think) don't need to
* be in this structure. In RV-F/D there is one 32-bit CSR containing a few
* flags.
* This addition is not quite enough to get analysis or debugging working,
* but can be a step towards that, and prevents warnings about being unable
* to import the register profile from isil during launch on RISC-V.
* Also update bits to 32|64 instead of 16|32—there is no 16-bit
* RISC-V.
* Fix arm thumb endianess (#13572)
* Fix assert in format print when trynig to retrieve a null register name (#13569)
* Fix warnings when SN is not defined for a specific arch (#13568)
* Fix #13552 - Crashes in tcc parser (#13566)
* Fix some warnings and remove unused code
* Revert "[WIP] Added jump and fail info to pdJ"
* This reverts commit 20f875b.
* from #13481
* Remove dead r_core_save_parsed_type() declaration (#13564)
* Build arch detection for RISC-V (#13560)
* Make sure that asm.arch and anal.arch is set correctly when starting
* radare on RISC-V.
* Remove unused CMP_END_GT()
* Include aap in aaa (#13543)
* Include aap in aaa
* Added aap only if file.type is unknown
* extracted them to method
* Add ut*/st* type shortcuts (#13550)
* Fix io.unalloc off-by-one (#13535)
* Fix newline after axj output (#13533)
* Add support to multiline assembly patching (#13526)
* For example, this line 'OFFSET : nop;nop;nop' (provided in the example patchfile at binr/rabin2/patch.txt) now actually works
* Fix a minor bug in panels (#13531)
* Fix build
* Fix build
* Fix #13511 - pqz -> pqs and psq as an alias for pqs
* Rewrite kernelcache check_bytes (#13518)
* Parse load commands to extract 3 metrics (kudos to @Siguza for suggesting):
* use of LC_UNIXTHREAD
* absence of any library linked against
* addresses in the upper half of the address space
* If those are met, then it’s a kernelcache. This just needs to parse all load commands types and vmaddr from LC_SEGMENT_64 (but nothing more) from the bytes.
* Run aav after aac in aaa
* When using debugger the file assumed path for the auxillary script
* was dbg://.r2, without debugger it's just .r2.
* This patch cuts out the 'dbg://' prefix if found before looking for the
* auxillary script.
* Make buf field private in RBuffer (#13473)
* Fix pemixed build (and include it in meson build)
* Do not use base_priv in yank, it was wrongly used.
* Fix jump/fail for Java ops
* [WIP] Added jump and fail info to pdJ (#13481)
* Added jump and fail info to pdJ
* tired of waiting
* pxA > pCA
* Fix dt+ command parsing
* Fix build on capstone3
* Fix .travis to build release/prereleases branches too
* Fix regressiono
* Handle more X86 instructions to, at least fill the ->type
* Fix #13367 - last line glitch in r_cons_strcat_at
* Fix #13367 - Fix offbyone alignment in line printing
* Improves graph generation times. But it's still called too many times
* Update capstone-master (#13496)
* Fix #13485 - Crash in anal_tp (null deref) (#13497)
* Do not compute asm.stackptr when not requested, fixes slow disasm issue
* Save aliases in projects
* Fixing aflqj (#13483)
* pd 10 > $foo # save the output of pd 10 into $foo
* $foo # print the contents of $foo (the output)
* $* # values are now printed in base64
* $foo=base64: # is now supported
* Removing debug output from top of vbg screen (#13479)
* af+ sets meta.min (#13484)
* Random fixes and improvements for visual debug traces
* Add "return" and deindent
* Fix mulss pseudo (#13470)
* SP was declared as 'sp' in the register profile which doesn't exist. Stack pointer is a7.
* Most C compilers for m68k (e.g. LatticeC) use a6 as stack frame pointer via LINK and UNLK instructions, declare a6 as BP
* Fix clusterfuzz-testcase-minimized-ia_fuzz-5636199282114560.dms
* Move compiler line to the right place
* Fix build on newer RISC-V compilers (#13459)
* On gcc 9.x, __riscv__ is no longer defined but __riscv is.
* This is documented under C/C++ preprocessor definitions on
* https://github.com/riscv/riscv-toolchain-conventions
* Fix ft command crash on Windows (#13457)
* Change 'sanitiz' from bininfo to be according to alphabetical order (#13456)
* Fix invalid json regression for compilerr
* mach-0 empty value for now
* Optimize slightly r_core_visual_disasm_down() (#13450)
* Clean up of PR #13441 (#13455)
* Chip8 pseudo fixes (#13453)
* Fix #1179 - itj hashes calculation command has fixed (#13441)
* Fixes #1179 - itj command has fixed, small refactoring on hashes storage, removed obsolete file.sha1 usage
* Show all the different hashes on it and itj
* it and itj refactoring.
* PJ optimizations have made, added more arguments checks
* Fixes pipes implementation on windows (pipe data was treated as a string instead of binary data so first \0 truncates it)
* Make other RBuffer fields "private" (#13444)
* Use r_buf_size to get the size of a buffer, not the private field
* Use r_buf_seek instead of adjusting the private cur RBuffer field
* use r_buf_read instead of r_buf_read_at(.., cur, ..)
* other r_buf_read_at/r_buf_read
* Fix RBuffer usage in REgg
* Wrong replace with r_buf_resize
* Other r_buf_resize fixes
* style fixes
* other style fixes
* Introduce r_buf_tell API instead of using seek
* other style fixes
* style
* style 2
* write_at(cur) == write
* fixes
* avoid changing test
* Make most RBuffer fields private
* Add some fixme comments
* still use base_priv in some places
* Simplify WASM code by avoiding duplications (#13443)
* Simplify code by avoiding duplications
* Use r_return in consume_r
* Fix MSVC warning (#13434)
* Fixes crash in the disasm and assert for the folded bb feature (#13440)
* Change order of ? And i output (#13418)
* Completely kill the msvc/ directory and the unix-specific includes workarounds
* RBuffer should not be const (#13432)
* Improve Makefile on macOS (#13431)
* OS can have already be set to other values on user machines, OS= fits better here.
* FreeBSD get thread name support only from 12.x flavor (#13428)
* Fix #13000 (#13083)
* Fix musl compatibility - ARM_VFPREGS_SIZE is defined in asm/ptrace.h (#13427)
* Fix bug in print_flag_json() (#13425)
* Make pid.c use PJ (#13424)
* Fix invalid instruction warning (#13417)
* store cmpval and cmpreg in every basic block
* lookup cmpval from predecessors considering TBH’s index register
* Fill op->jump and op->fail for all branch and jump instructions
* Handle short and word variants of BSR (BSR.S and BSR.W)
* DBxx instructions treated as conditional branches
* Handle PC relative variant of JMP & JSR
* Bugfix for the decoding of long instructions (code in asm_m68k_cs.c assumed a maximum of 8 bytes, but maximum is 10 bytes)
* Hide the CC=E warning when no anal.verbose is set
* Fix Meson build
* Simplified
* Update sdb from git
* Add support for UTF console input in Windows
* Convert ANSI input to UTF-8
* Convert UTF-8 to acp when calling ANSI version of functions
* Determine if Windows console output is UTF-8 on the fly
* Add afbF and handle Z key in visual disasm and graph to toggle basic blocks
* Correct visual graph help to actual behavior (#13406)
* Fix aclj
* Fix #13357 - vG and v^ work again as an alias for vgg and vgG
* Little warning cleanups (#13398)
* Add C64 Fortune (#13397)
* Remove noisy and useless warning
* Remove many uses of max_bb_size
* Use anal.verbose in more places
* Fix 2 crashes in the graphs and the analysis
* Implement and use experimental read_ahead for anal
* Introduce read_ahead approach for testing io usage and performance in analysis
* More cleanup and expose a new api for RAnalOp
* Kill FCN_SDB and some more code cleanup
* Add bytes_read var, convert some addr + idx -> at and reinstate some len-based checks
* Ensure invalid insn handling doesn't check invalid data
* Move "Truncated instruction" err msg to r_anal_fcn_add_bb()
* Remove gotoBeachRet macro and just use the goto statement
* /by @kazarmy @radare @ret2libc
* Fix anal jmp eob code (#13387)
* Move RAnalOpMask into parameter
* Use r_buf_size to get the size of a buffer, not the private field (#13380)
* Use r_buf_size to get the size of a buffer, not the private field
* Use r_buf_seek instead of adjusting the private cur RBuffer field
* use r_buf_read instead of r_buf_read_at(.., cur, ..)
* Fix RBuffer usage in REgg
* Introduce r_buf_tell API instead of using seek
* write_at(cur) == write
* Fix http webserver regression introduced in 81ad0fe
* UAF/memroy leak fixes proposal.
* esil_sub should manipulate esil->old and esil->cur
* otherwise, tests get broken...
* Drop weird esil_sub implementation, and use the same
* implementation as esil_add (and esil_mul, and esil_div)
* esil_add: fail on invalid dst, as well as src
* Consider the map sorting when two map_events are the same.
* When two maps start at the same address, it's important to consider the
* initial priority of the maps, which is given by the id field.
* Be more explicit in comparison between boolean and integers
* Remove CYGWIN & MINGW remnants (#13377)
* The 'display' routine of the malloc_chunk should display each field of
* flag field as bits.
* So prior to this proposal, dmhc could yield following information:
* struct malloc_chunk @ 0x7f5462ed4000 {
* prev_size = 0x0,
* size = 0x1112000,
* flags: |N:4 |M:2 |P:1,
* The flags should be displayed as: flags: |N:1 |M:1 |P:1
* Update sdb (#13373)
* Show call hints and propagate types for indirect calls to imp symbols (#13350)
* Few code cleanups (#13369)
* Remove dupe api in r_cons
* bin_bootimg: load_buffer/check_buffer
* bin_cgc/bin_elf/bin_elf64: remove load_bytes/load + load_buffer
* Implement check_buffer in bin_cgc
* bin_coff: load_buffer/check_buffer
* bin_dex: load_buffer/check_buffer
* bin_dol: load_buffer/check_buffer
* bin_dyldcache: load_buffer/check_buffer
* ao->kv's ownership is moved to RBin through the get_sdb method of
* RBinPlugin, thus the plugins should not free it themselves.
* Further usage of thread debug (#13359)
* Add r_cons_gets() API
* Fix crash when executing om (#13362)
* Implement load_buffer/check_buffer in RBinPlugins (#13353)
* Fix memleaks in MACH0 bin plugin
* Add check_buffer method to RBinPlugin
* Add r_buf_read8_at API
* bin_any: remove load and fix mem leaks
* bin_art: implement load/check_buffer, remove load_bytes/load
* bin_avr: add load/check_buffer and remove load/load_bytes
* bin_bf: load_buffer/check_buffer
* bin_bflt: load_buffer/check_buffer
* bin_bios: load_buffer/load_bytes
* This improves performance especially when there are thousands of sections.
* Update capstone from git
* Add r_th API to rename threads in r2
* Fix esil assert
* Added missing autocompletions for project management commands (#13340)
* Remove extraneous space for scd instruction for chip8
* Fix msvc build
* Remove parenthesis from class size listing (#13238)
* Cleanup the use of getopt with our wrapper
* Fix relocations in ET_REL ELF (#12694)
* Get the section name for SECTION/LOCAL ELF symbols
* Do not print warning messages if ELF is ET_REL
* In that case, it's a normal thing that dynamic sections and program
* headers are not present.
* Fix the address of the fake PLT table
* Do not use + symbols if there is no name
* To be able to add tests for nintendo DS r_bin plugin
* Add LGTM alerts badge
* Requires -F kernelcache for now
* Fix warnings in bin.qnx
* Add missing noreturn definition for darwin
* Set hints for ARM special symbols $t and $a
* Do not set $d metadata
* Fix #13297 proposal (#13299)
* Fix #13244 - Assembler support for x86 bsf and bsr instructions (#13303)
* Avoid assertion in esil traces, speedup some paths (#13300)
* Fix #13302 - Add .* as an alias for #!pipe but trimming in first space
* Fix microsoft cc (#13298)
* Fix pdJ for cmt.right=1 + pseudo=1
* Changed http.verbose to false (#13292)
* Use fcn->meta.min instead of fcn->addr in fcn rbtree code
* Maintain 2nd rbtree and reinstate _fcn(_addr)_tree_find_addr()
* FCN_ADDR_CONTAINER -> ADDR_FCN_CONTAINER
* Use r_rbtree_insert ⧸ delete as appropriate
* Remove set_meta_min_if_needed from _fcn_tree_probe⧸iter_next
* Fix memory leak in strbuf. (#13273)
* Fix memory leak in strbuf.
* sb->ptr was set to NULL without freeing the underlying data.
* Use R_NEW instead of R_NEW0, as the memory is
* initialized immediately afterwards.
* Call r_*_op_init in r_asm_disassemble/r_anal_op.
* Avoid splitting obj.* flags into their own flagspace (#13286)
* Little code cleanups (#13277)
* Use pj in canal.c
* Fix hang after ctrl-c
* use relsub addr
* kill i2, grab top of list when not in preferred spaces
* Add r_core_flag_get_by_spaces
* Remove r_flag_get_i2 and use r_core_flag_get_by_spaces
* Fix fcn name from flag
* Better consistency: flag_get instead of get_flag
* Quickpath for just one flag
* added annotation to the set_reg_profile for documentation completeness, the FPU registers are really too small and should be 5 words minimal(80bits) TBH. SR is only 16bit but it having 32bits is okay, CCR should be folded in but IDK how this would affect access.
* Update anal_m68k_cs.c (#13274)
* EXG (EXchanGe register) is an valid instruction for R_ANAL_OP_TYPE_MOV because it only moves from RegN to RegN.
* Fix leak in RIO: free iter after removing it from list
* ls_append/ls_prepend will create a new iter, so we need to free the
* iter that was removed from the list.
* Fix some leaks from unit tests
* PoC: Implement aCef to emulate all calls in the function and add comments (#13266)
* This PoC requires more refinement to use the API and clean the code
* Add '$' in v! to set the program counter
* Honor asm.indent and only toggle in disasm
* Remove SLOW_IO from core/anal.c
* Fix crash in canvas, some leaks and random code cleanup (#13254)
* Filter out special symbols in ELF (#13173)
* Filter out special symbols in ELF
* No need to add the special case '\0'
* Keep special symbols, but do not process them
* Refactoring
* Make sure s->type is not NULL
* Do not print special symbols in rad mode
* Avoid double check
* Fix PR's comments
* Warn when invalid use of r_buf_buffer (#13240)
* Update list of supported architectures (#13250)
* Change old references to aC to ac (#13243)
* $ rasm2 -x 'nop;nop;mov eax, 33;push ebx;int 0x80;nop;mov rbx,48484;nop'
* 0x21b89090 0x53000000 0x489080cd 0xbd64c3c7 0x00900000
* As suggested in https://twitter.com/travisgoodspeed/status/1101966927688318978
* BSF: https://www.intel.com/content/dam/www/public/us/en/documents/manuals/64-ia-32-architectures-software-developer-instruction-set-reference-manual-325383.pdf#G5.925704
* BSR: https://www.intel.com/content/dam/www/public/us/en/documents/manuals/64-ia-32-architectures-software-developer-instruction-set-reference-manual-325383.pdf#G5.21931
* MIPS elf renaming proper sections + little typo.
* recurseAt: Also update size in fcn rbtree
* Prerelease travis release (#13189)
* Add additional tests for release/prereleases
* Test different plugins configurations
* Add some libraries to docker image
* Disable SYS_CAPSTONE for now because there is only 3.0.5
* Fix html magic file to respect libmagic's format too
* < can be used with string so it should be escaped if we want to match
* the exact string ""
* Use plugin License when printing rasm2 plugins in JSON format
* Build with system capstone, but do not run tests because they would fail
* Fix tiny plugins file to use xtr_fatmach0 instead of just fatmach0
* Use clang to compile with ASAN
* Use b_lundef=false
* Just test if different plugins configuration build, no r2r
* Use sys openssl as well
* Introduce aess to fix the regression confusing step-over and step-skip
* Properly specify esil step over/or-not in the API to fix regression
* Initial implementation of aCe
* no assert on free, also fixes warning
* Added missing include (#13198)
* Fix few warnings
* After release version bump for 3.4.0-git
* refactored cmd_print.c to use pj.c (#13174)
* Refactored cmd_print.c to us pj.c
* Changed to r_str_trim_ro
* Few code changes, possible errors. (#13192)
* asm.strenc -> bin.str.enc (#13180)
* Added missing incude (#13184)
* Default to unknown type
* Detect RET
* Remove fail from always succeeding jump/call
* Move keypad commentary to LD Vx, K, add to SKP/SKNP
* Annotate skips correctly
* Annotate more instructions
* Refactor p-j using pj.c (#13170)
* Use macros for common flagspaces names instead of hardcoding them (#13175)
* Fix NULL pointer dereference in data references analyzer (#13178)
* Data references analyzer assumes that each function reference maps
* to a certain section, but this is not the case for raw binary files
* like shellcodes/firmware images/etc.
* This bug was introduced in #10117.
* Fix null ptr deref in axg* (#13177)
* Flush before closing pipe
* Change eprintf to rowlog
* If the user already provides a capstone tarball, the buildsystem should not try
* to download it again.
* Use r_str_ncpy instead of strlcpy
* Make Lisp fortune work with Clojure(Script) (#13161)
* Mon Feb 25 2019 Daniel Molkentin <daniel.molkentin@suse.com>
- Update to version 3.3.0
anal
* Do not permit function names containing registers
* Add missing types-darwin.sdb and honor asm.os to reload them
* Add some Resource API to types db
* Disable function autonaming to avoid confusions
* Initial implementation of RAnalDataType
* Address comments in #13094 related to maxbbsize and maxfcnsize
* Fix anal.dalvik for monitor instructions
* Add op.type of UD0/UD1/UD2 x86 instructions
* Fix aaF sort issue, honor a2f and fix big allocation in analysis
* Implemented new 'ax.' command
* Improve ARM64 (anal.arm.cs) to cover more optypes
* Improve the Dalvik's ESIL
* Initial implementation of aaF
* Fix #12932 - Handle 'bx lr, pc;bx r3'
* Implement EXPERIMENTAL emu.lazy (20% faster analysis with aae)
* Initial implementation of the 'aao' command
* Fix aae - set pc to current offset
* Self referenced xrefs makes no sense
* Fix annoying warning message in aab
* Update list of syscalls for Linux on x86-(32|64)
* Update aea? (#12849) and display @{R,W} in aeaj
* Add JSON support for /g
* Fix #12738 - afi displays if function has been traced
* Fix aht cjmp and optimize assert in asm.emu when no regprofile is set
* Fix instruction address issues in the aef output
* Initial implementation of aflm - makestyle function list
* Change assert in cyclomatic complexity with a nicer warning message
* Silent some 'invalid instruction' warnings by assuming data
* Blind fix crash on exit after analyzing big binary
* Implement aht to change the opcode type via anal hints, fix ao
* Make afij ref-types more readable for human animals
* Fix axff and add json support
* Move r_anal_op_hint() into r_anal_op via R_ANAL_OP_MASK_HINT
* Fix ASAN crash when running afbr
* Fix afns and add JSON support
* Fix noreturn handling of reloc functions
* Improve ESIL xrefs and string discovery with aae on arm32
* Kill anal.noncode instead use anal.in with io.maps.x
* Improve aap for arm64
* Add r_anal_fcn_format_sig
asm
* Use r_return in RAsm APIs and fix some regressions
* Remove R_ASM_BUFSIZE, all buffers are now dynamic
* Implement 'wao jinf' to assemble infinite loop instruction
* Fix arm 64 assemble for msr/mrs OPs
assembler
* Fix #11249 - Fix register not being assigned
* Fix #12431 - Add X86_32 Control/Debug registers assembly
assembly
* Fix ARM64 assemble for "b ." ("b 0x0")
bin
* Change -T behaviour and rename iF into it
* Compute hashes only with a new r2 flag
* Fix #13035 - PE resources crash
* Fix bin_mz plugin magic check
* Fix the file hash computation
* Fix rabin2 extract path for Windows
* Elf: recognise android as os
* Display file hashes into rabin via new mode
* Fix PDB crash freeing streams with the right function instead of assuming
the delegate is not corrupted Fix the PE parsing to properly get the COFF
symbols
* Fix buffer overrun on pdb file read
* Add iF to show file hash and related refactoring
* Fix demangling of relocs and exported symbols
* Fix #11981 - Show PE resource name instead of just the index and use pj.c
* use the reset vector at 0x4 for entry
* sega genesis is big endian
* Add check for MZ magic in bin_bios.c
* Fix #12474 - Add simplest mode handler for -zzz flag
* Fix wasm exports list
* Fix #12637 - Support .plt/.plt.sec in ELF
* Add initial support for dyldcache v3
build
* Fix #13087 - Automatic NORELEASE mode, use curl if no wget
* Disable ptrace-wrap for WSL
* Fix capstone cloning and patching issues again
* Fix #12834 - Set minimum version for libuv to 1.0.0
* Do not use reversed keyword of meson
* Set gittap even in release tarball
classes
* Store Anal Classes list in own SDB Namespace
config
* Fix #12760 - e cfg.log.* is now log.*
* Add cfg.log.events=false by default
cons
* Make RCons.is_interactive() into the RConsContext and improve loading projects in tasks
* om= and iS= now honor the theme (eco) settings
* iS= now accepts eco (theme) settings + highlighting of sections with w/x permissions
* Avoid big writes in a single syscall
* Fix #11701 - use color theme in dmh* commands
* Fix #12925 - $ being ignored if : or [] is present in grep line
* Fix #12906 - Add support for mult. keyword highlighting in grep
* Move Palette to RConsContext to make RCoreTask less racy
core
* Initial support for the r_alloc (+aligned) API
* Implemented dir.home and dir.tmp
* Add user * to REvent Hooking and add all_callbacks for R_EVENT_ALL
* Improvements and code cleanup in util/str
* Fix #12773 - Support setting multiple configs at the same time
* Remove noisy log message in the @@@ operator
* Implement yfx (yank from hexpair) command and r_core_yank_hexpair API
* Fix #6424 - Disable scr.color when doing backticks
debug
* Add --without-ptrace-wrap configure option
* Implement aeC (ESIL appcall), also drr shows reg aliases and add dr??
* Fix debugger regression in Android
* Debug process state info support on OpenBSD
debugger
* Fix debugger regression in Android
* Debug process state info support on OpenBSD
disasm
* Fix #13079 - Show comments above the folded functions
* Fix MIPS asm parser to display vars in disasm
* Fix #11585 - Missing main/entry substitutions
* Add asm.types=[0,1,2] - set verbosity level for function signature comments
* Implement asm.str.lea instead of hardcode the option
* Fix false positive string issues on arm64 when adrp+add
* Fix reflines for infinite loop instructions
* Fix asm.lines.ret for pdJ (Fix #12782)
* Have arm pseudo's replace() use the same replacement style as x86's
docs
* Typo immbediate -> immediate
* Typo immbediate -> immediate
documentation
* Add -U resources in rabin2 man
* Change aab help fix #12695
* Change aab help fix #12695
enhancement
* Add Certificates in rabin2
esil
* Fix vv_ and signed addresses bug in esil for x86.cs (fixes kernel emulation)
* Fix #12743 - Warn when ESIL tries to shift > 63 bits
format
* Compute struct/union size in tsj/tuj
fs
* Fix hfs mounting for Windows
graph
* Fix #12990 - Handle ^C in agRv
* Improve the graphviz output for custom graphs
* Improve callgraph dot output 'agCd'
* Introduce graph.few to render just few basic blocks, comma in visual
hexdump
* Initial implementation of hex.align
http
* Implement the cmd_colon and experimental http.colon
io
* Implement self_regions for Windows
* Add usable uris field to oLj and r2 -L
* New command 'oma' to create a map covering all VA
* Improve rap:// code, r2p_ is now r2pipe_
json
* Fix avj - in case of no vtables [] shall be returned
* afxj and axtj using pj.c
* Fix axgj output (should be rewritten with pj)
main
* Disable (with warning) -t and deobfuscate -n variable
meson
* Update list of sdb files to build and install
optimization
* Speed up RBinReloc retrieval
panels
* Fix a parsing issue of the config
* Use pjAPIs to output proper json and bug fixes
plugins
* Add Ll as an alias for #!
print
* Added few pf examples
* Initial import of the c1 command to compare bits
* Add new command: pifc and pifcj
* Add quiet and json for aflm
* Check if address is mapped in the hexdump and disasm via io.unalloc
* Implement "pt." command to print the current date
* Fix #12711 - Fix hex.compact in pxa
r2pipe
* Add r2pipe_ R_API functions to r_socket.h
ragg2
* Update ragg2 man page
* Added the append string feature for ragg2
refactor
* Remove global variables in rasm2.c
* Use RSpaces in RFlag
* Kill RIOSection
* Aoj use pj
* Use pj in aeaj
* Use pj in ttj, tj, tej, tfj and 'tej enum'
* Fixing typo
* Use pj in asj
* Use pj in anj
* Almost completely kill RIOSection from io and core (-218LOC)
* Standardize version using blob_version
refactoring
* Remove global variables in rasm2.c
* Almost completely kill RIOSection from io and core (-218LOC)
search
* Fix #12942 - Implement /c[vV][j] /cej to search for code immediates
* Fix #12378 - Implement /ai to search for infinite loop instructions
* Implement /a1 to find all instructions by changing 1 byte
sign
* Initial implementation of the visual zignatures in vbz
* Add bbsum metric for zignatures
* Add vars in zignatures
sync
* Implement T=& and handle more meta events
* Initial WIP implementation of sync using http and T
* Add basic auth to the webserver
tasks
* Make ! command sleep around system()
types
* Fix #12725 - pf* exposes flag sizes via fl and Cd
* Initial implementation of the tfc command to manage calling conventions
* Add more function signatures for objc_ apis
* Set type of double to F
* Support typedef to anonymous struct in more than 1 header
* Support typedef'd (anonymous) structs
* Shorten local var and type name
util
* Add extern "C" to r_rbtree.h
* Fix comma before object or array in pj
visual
* Implement vdo to use aho from visual
* Fix toggle emu.str via v)
* Honor io.cache in vpci
* Revert "Revert "Prevent runaway scrolling in Visual when using arrow keys
* Revert "Prevent runaway scrolling in Visual when using arrow keys
* Implement vbg - wip, but at least vbg does something
* Prevent runaway scrolling in Visual when using arrow keys
* Add 'o' key to seek in the rop browser and improve usability
* Handle subcommands for visual browse from the shell
* Initial implementation of the visual ROP browser
* Prevent runaway scrolling in Visual mode
* Visual 'j' honors asm.flags.middle
* Add orangg avatar in ?E+ and implement r_str_list_join()
* Initial implementation of visual gadgets
* Add support for visual gadgets in graph and panels views
* Implement pgm command to move gadgets around
wasm
* Fix conversion f32.const or f64.const
* WebAssembly improvements in branch lines and namings
* Fix a little bug in wasm type section parsing
windows
* Fix abspath issue and implement r_file_copy using native api
* Fix path issue when last char is a slash
* Implement sys_cmd_str_full_w32()
Other changes
* Release r2-3.3.0
* X86_INS_UD0 was introduced in capstone 4, so use it only there (#13154)
* Expose save_parsed_type() as an API call for Cutter (#13149)
* Upgrade capstone-master
* Add missing include for meson
* Fix Linux debugger crash regression
* Fix alignment issue in io.ptrace with the new r_malloc_aligned API
* Fix dL bochs crash
* Fix #12855 - Crash in "r2 -c'dL bf' -d ls" (#13145)
* Fix path with spaces problem in windows (#13144)
* Fix #13141 - Check if the unset space is the current one (#13142)
* Added eprintf to dbg.execs on non-Linux OSes (#13134)
* Minor fixes
* Workaround the cursor scroll glitch in folded functions
* Try a fix for #13072 - invalid address in dalvik disassembler
* Fixed afbj result to print empty array (#13127)
* Refactored cmd_anal.c to use PJ (#13122)
* Fix #11759 - aac now names import trampolines (#13124)
* Time to say goodbye to r_json (#13126)
* Fix build for WSL (#13129)
* Upgrade sdb
* Do not escape path to Windows file (#13108)
* Little cleanup before release (#13115)
* Clean up some code in disasm.c
* Fix agfJ
* Make disasm use pj
* Make ASAN green again (#13098)
* Fix ASAN crash in abtj
* Fix ASAN crash in asj
* Strdup the input because it is a const char * and shouldn't be modified
* Fix some r_assert warnings (related to len==0)
* Check if there are enough words only when necessary
* Other len == 0 edge cases that do not belong to r_return_* checks
* Do not print classes if there are none
* Type is not present in case of va_args, so do not blindly use (len - 1)th char (#13106)
* Fix #12800 - PE exports not listed
* Do not use _free in a _init method, but free in a _new method (#13100)
* Various little code fixes. (#13075)
* Remove most warnings during compilation
* Implement aaFa, optimize and improve boundary checks
* Refactor xrefs.c to use pj api (#13085)
* Fix undefined behaviour in r_uleb128
* Fix PE doublefree regression in resources
* File: clusterfuzz-testcase-minimized-ia_fuzz-5652434150490112.dms
* Fix x86 capstone patch
* added valgrind fun fortune (#13086)
* Meson: Add r_debug_dep to libr2_dep (#13088)
* Unwind capstone to safe commit
* Solve java regression
* Fix #12948 - Fix . autocompletion (#13082)
* Fix #13067 - Crash in the java parser (java-read-off-by-one)
* Fix #13070 - Fix oobread in anal.arc
* Add CC in vbt, still wip, just readonly list for now
* Fix #12938
* Use pj for agfj (and others) + rename pj_sn and pj_ksn to pj_N and pj_kN
* Fix null-pointer dereference (#13074)
* pf: print float at max precision (#13064)
* Fix #13062 (#13063)
* Add missing csmtpapi, csncdapi files
* Fix #13027 - pf: print double at max precision (#13049)
* Fix invalid json in agfj under some situations (#13051)
* If, for whatever reason, a basic block with negative size is
* contained in a function the json produced is not valid.
* pj-ify dmmj
* Fix x86_64 socket syscall (#13050)
* Currently syscall nr 41 is named socketcall. However on x86_64
* syscall nr 41 is named socket and expects 3 arguments.
* Fix some crappy regressions in capstone.sh
* Upgrade capstone
* Purge capstone when doing the iOS build
* Fix the iOS simulator build
* Fix truncated issue with long dir.prefix is used
* Small optimization when concatenating the home
* Update plugins.nogpl.cfg and fix a couple of warnings
* Use pj api in core/config (#13047)
* Fix #13034 - Trailing 0 is gone (#13046)
* Fix couple of mem leaks (#13041)
* Adding one level into the hashes JSON (#13045)
* Use pj api in afvsj
* Use pj api in rasm2
* OS X does not seem to accept X.Y.Z-git as lib version (#13043)
* acr+make does work because it does not set any lib version on darwin. This patch
* will adjust the version to use for libraries when radare2 is installed through
* meson.
* Update fortunes.fun (#13044)
* Fix #13021 - Fix crash in anal.dalvik
* Fix #13031 - Crash in dbw
* Fix #13032 - Double free in dbw
* Fix #13033 - Crash in pifjA
* Fix #13039 - Crash in 'echo 0xF..A | rax2'
* Fix pe crash regression
* Added feature to return error while parsing c header file (#13030)
* Added feature to return error while parsing c header file
* Fixed cmd_type.c to pass tests
* Fix clusterfuzz-testcase-minimized-ia_fuzz-5647859834159104.dms
* Fix clusterfuzz-testcase-minimized-ia_fuzz-5670419745472512.dms
* Fix clusterfuzz-testcase-minimized-ia_fuzz-5643065568526336.dms
* Fix clusterfuzz-testcase-minimized-ia_fuzz-5166506139189248.dms
* Implement vt: to create a new tab with an associated command
* Fix conditional again
* Fix off by one conditional
* Fix some ASAN issues found randomly
* Unescape chars when using rax2 -S
* this commit resolve second part of #12862 (#12985)
* Add newline to end of types.sdb.txt
* Small TCC bitfields parsing fix
* Some more fixes for the iOS build in sys/ios-sdk.sh
* Remove some r_parse spaces
* t-* resets tcc's anonymous symbol counter (#13015)
* Remove commented anon_sym init in tcc_compile()
* r_cons_singleton() -> r_cons_singleton ()
* Add some spaces
* Make Class Attr Events more fine-grained
* Add REvents for Anal Classes
* Enable Travis only on master
* Add LC_NOTE missing load command header for mach-o
* Fix #13001 - null deref in RBin
* Use flat RVector for all_calbacks in REvent
* Fix classes names for Windows (#12998)
* Fix warnings
* Use pj in rasm2.c and add pj_f for float
* $ sudo r2 /dev/disk0
* [0x00000000]> om
* [0x00000000]> o
* 3 * r-x 0x00000000 /dev/disk0
* [0x00000000]> r
* 0
* [0x00000000]> oma
* [0x00000000]> om
* 1 fd: 3 +0x00000000 0x00000000 - 0xfffffffffffffffe r-x /dev/disk0
* [0x00000000]> x 32
* offset - 0001 0203 0405 0607 0809 0A0B 0C0D 0E0F 0123456789ABCDEF
* 0x00000000 0000 0000 0000 0000 0000 0000 0000 0000 ................
* 0x00000010 0000 0000 0000 0000 0000 0000 0000 0000 ................
* [0x00000000]> s 0x1000
* [0x00001000]> x 32
* offset - 0001 0203 0405 0607 0809 0A0B 0C0D 0E0F 0123456789ABCDEF
* 0x00001000 4546 4920 5041 5254 0000 0100 5c00 0000 EFI PART.......
* 0x00001010 c651 78b2 0000 0000 0100 0000 0000 0000 .Qx.............
* [0x00001000]> qq
* Remove extra space after hexdump comment header (#12984)
* c1 0x1000011ec @@s:$ $+10 1
* Fix an assert in anal_tp
* Fix some assert issues and other crap
* Fix empty json (#12979)
* Fix help and json in /ci (#12978)
* Use unsigned format in xref addresses
* Remove Color_RESET in hexdump comments when scr.color=0 (#12974)
* Fix 'aao' command
* Align left the ascii art
* Fix anal.jmptbl warning message
* Fix #12973 - Fix 1 byte oobread when running in asan
* Add a null check (#12977)
* Use PJ in "irj" and add Symbol VA (#12976)
* Use PJ in "irj" and add Symbol VA
* io.unalloc.ch: Hexdump char if byte is unallocated (#12968)
* Fix asan crash in PE parser (oobread) (#12966)
* Fix env. vars. not being parsed in !! in Windows (#12956)
* Fix arm assembler in Windows
* Fix x86 assembler in Windows
* Removed duplicated -q flag in ragg2's usage message (#12964)
* io.unalloc=true: print space in ascii hexdump if unmapped (#12958)
* Fix Segfault when executing /cj without args (#12961)
* add reloc indicator to pdj
* Implement vbc [gG] and fix crash in aao
* More ios-sdk build fixes
* Fix section->size = 0 assert
* iOS10 is required for the arm32 builds
* Add LC_VERSION_MIN for the libr2.dylib iOS build
* Fix #12934 - Crash in p-
* Fixed the typo in the struct name r_lib_struct_t (#12944)
* Trim scriptfile after '.'
* Rewrite RSpaces to use RBTree and remove use of indices everywhere (#12904)
* Rewrite RSpaces to use RBTree and remove use of indixes everywhere
* Use RSpace in r_meta_space_unset_for
* Use r_str_ndup instead of strndup because windows does not support it
* Add some comments
* Fix issue #12742 (#12922)
* Introduce fnj command (#12923)
* abtj using pj.c
* Done for x86, arm16, arm32 and arm64
* Check aab argument value
* Fix the "Visual runaway scrolling when using arrow keys fix"
* This reverts commit 6c1d31c.
* This reverts commit ded4b9e.
* fix null deref: r2 -N -e scr.prompt.file=true --
* fix glitch where pd--N and N > offset
* closes #12897
* Add an additional null name check in print.c
* Remove invalid sleep from cmd_open()
* Add missing file
* Fix more null derefs
* Fix null derefs
* Added MIPS 64-bit calling conventions (copy of 32-bit). (#12891)
* Small improvement (#12895)
* Calculate bool based on logic and select prefix based on bool (not vice
* versa)
* axfj using pj.c
* axtj using pj.c (#12887)
* Android may also support ptrace-wrap
* Use pj for X509 and PKCS (#12877)
* Convert R_JSON to pj
* Ident
* iCj support
* Change return type
* Fix @deroad comments
* Fix last issue
* Fix empty output
* Fix C99 construct without using -c99 (#12879)
* Switch to capstone master in Meson
* Implement r_anal_ref_type_tostring()
* Switch to capstone master 🤪
* Fix rafind2 -S for UTF8 chars > U+00ff (#12866)
* Fix rafind2 -S for UTF8 chars > U+00ff
* Use '< 1' instead of '== 0'
* Remove unnecessary else
* Add a 0
* https://darkdust.net/writings/megadrive/initializing for references
* fixes #12848
* i only chk with a few games, but they all look correct
* Printkey json cb show format pj
* Fixes for the android build and related warnings
* Fix aht div
* Small RFlags fixes (#12856)
* Get the real item name before looking for it
* Otherwise, it may happen that you look for a name which does not exist
* and then when the name is filtered it is transformed into a name that is
* already in the list of flags.
* Make sure flagItem is inserted in HT and skiplist
* Update SDB code and use ht_update_key API in RFlag
* Fix set_name/filter_name mess
* Small fixes here and there
* Force update when creating new flags
* Use pj API to print json
* rm stupid debug printf
* add support for apple debugserver on amd64
* Oops
* Add 64-bit MIPS profile
* Fix isqq #command
* Removed some spaces
* Fix agfJ for quotes in function names
* Fix pdJ for quotes in flag names
* Use pj in Pj
* by pancake + fix from kazarmy
* Copy pal when creating a new task (#12835)
* Fix minor memory issues (#12836)
* Add initial Wasm support for atomic instructions. Fix get func offset from id. (#12833)
* Fix Wasm function rename to ignore memory and other non-function symbols (#12832)
* Implement sdb_js0n() without GNUC weirdness (#12829)
* Fix shift check in esil.c
* Add Vdt to tweak the instruction type hint (#12821)
* Add missing .h in meson.build
* Fix iR timestamp + consistent timestamp format output (pt*, iI~comp, iR) (#12770)
* Update SDB code and use ht_update_key API in RFlag (#12804)
* Fix crash in pC
* Moved pd-- help message under pd? command (#12809)
* Fix leaks in macros (#12803)
* Fix missing comma bug in pj.c fixes invalid json in afcfj (#12802)
* Use unsigned int for size when loading binary file (#12794)
* Trying to load a 2.4G core file do result into error message like:
* Cannot allocate -17240000 bytes
* Since opt->sz is unsigned, casting it to sized int is problematic.
* Fix regression in dmh's brk_end calculation (#12791)
* Update yank.c (#12787)
* remove signed differences in r_core_yank_hexpair()
* Remove flag list in RFlags and just use hashtable (#12703)
* Do not directly use flags->flags, but use r_flags_foreach functions
* Remove list of flags because unnecessary
* Do not free flagitem when we just need to change the name(aka key)
* Use skiplist to iterate, so we get order for free
* Use RIOMap instead of RIOSection which is being killed
* Free flagitems when ht is freed
* There's already the hashtable that can serve to iterate all flagitems.
* Oops
* Documentate yfx/yw/ywf/..
* Fix hang in =h&
* Fix undefined behaviour in signed int with 24 bit shift in softmagic.c
* Flush Visual stdin only if printable, \t or \n (#12764)
* Remove obsolete test file
* Remove obsolete test file
* Only flush stdin when no mouse wheel is used
* Use RBinSection, RDebugMap or RIOMap instead
* Remove omps command
* Fix segfault in ?E+
* Improve anal.eobjmp (bug spotted after almost killing iosections)
* Move r_disasm.h defs into r_core.h
* Change eprintf to printf in rarun2
* Change eprintf to printf in rarun2
* Fix #12654 - resolv reloc symbols (#12713)
* Move filling of symbols_by_ord into _r_bin_elf_get_symbols_imports()
* Remove unneeded midbb initialization
* Move core->anal check
* r_anal_reflines_str() boolification
* Fix segfault and add warning
* Run any command at any position in the screen
* Crop the output of the command to avoid glitches
* Works in visual mode as well as in console
* R_ANAL_REFLINE_TYPE_MIDDLE -> R_ANAL_REFLINE_TYPE_MIDDLE_BEFORE (#12733)
* Fix invalid read in cmd_meta (#12730)
* files is a reversed keyword in meson. Try to avoid using it.
* Tweak bitwise macros to work on 64-bit integers and use that in dyldcache
* Remove useless .c file and fix 2 small warnings
* Simplify get_import_addr by splitting into arch-specific functions
* Add support for .plt/.plt.sec split in x86_64/ELF
* Return plt_sym_addr if something fails there
* Do not rely on section names when possible
* Sections are not reliable, look for information, when available, in the
* DYNAMIC segment, which is used by the loader/linker at runtime.
* Use sections when nothing else is available in ELF
* Some type of ELF (e.g. .o files) do not have dynamic info, so the only
* thing we can do is rely on sections.
* After release version bump to 3.3.0-git
* Always print return type in r_anal_fcn_format_sig()
* Print var args in afcfj
* Fix movt r0, 0x1234 from incorrectly showing up as r0 = 0x1234 << r0
* Minor code cleanups/fixes (#12714)
* Use Homebrew Addon in Travis
- Update to version 3.2.0
anal
* Add asm.hint.cdiv
* Handle ^C in agf (#12618)
* Fix size of arm64 wzr register
* Rename ac -> aoc, aC -> ac, Fix help
* Add the missing fail arc for SBRx instruction
* Fix wrong splitting of functions in aac
* Initial implementation of emu.ssa
* Fix infinite loop bug related to anal.nopskip
* Use add-sorted instead of append+sort
* Heavy refactoring and sdbify the classes storage+logic
* Implement support for nword in ahi
* Fix ESIL borrow flag handling for SUB/SBB on x86
* Display all metas in current offset instead of just one
* Fix .in=io.maps, improving aap analysis (2052 vs 41 functions find)
* Small msp430 improvements
* Fix aap for thumb
* Fix #8054 - Update cpu flags in arm/thumb ADD/SUB
* Display all metas in current offset instead of just one
bin
* Fix #12654 - workaround resolv reloc symbols in ELF
* Refactoring of get_import_addr in format/elf
* Add timestamp to iRj output
* Do not use r_buf_get_at in RBin.nxo to solve 2 clusterfuzz crashes
* Fix missing exported symbols in ELF
* Add laddr to iI
* ie/iee: remove baddr
* Use entry.init0 instead of entry0.init
* rabin2 -H and iH uses cb_printf instead of eprintf+printf
* Improve RBuffer api, start to refactor rbin to use more rbuf
* it's nintendo 64 not nintendo 32
build
* Appveyor cleaning
* Fix musl build (required for Alpine)
* Do not statically link binaries by default in sys/static.sh
* meson: Do not use glob with meson
* Initial implementation of the Alpine Linux package
* Improve the meson scripts
* Fix Emscripten support
* Switch to capstone 4.1 (#12549)
* meson: Ensure python3 and no hard-code version
* meson: Ensure R2_DATDIR, R2_INCDIR, R2_LIBDIR be absolute path
* Users may want to install radare2 to a different directory than ~/bin.
* Parse --install-path in sys/user.sh to allow for users to do so.
cons
* Fix #12667 - Fix heap overflow in RCons.grep
* Fix #12397 - Colorize grep words if scr.color.grep is set
core
* Improvements and code cleanup in util/str
* Implement ?j to get JSON output of different representations for the same number
* Fix #12482 - Unify asm.shortcut/asm.{lea,jmp}hints
* Rename scr.pipecolor into scr.color.pipe
* Initial import of the PJ (PrintJSON) API
* Fix 11141 - replaced R_ASM_BUFSIZE with RStrBuf*
* Bring back f-.localflag (same as f.-localflag)
* Add some more random "fun" fortunes
* '=h&' is not an alias for '& =h'
crash
* Fix #12479 - negative disk_reads may not be allowed
disasm
* Fix esil function comment refline when there is jump to addr
* Allow select cpu for arm.gnu
* Add support for m68xx disassembler + analysis from capstone
* Initial support for 6502 with Capstone
* Optimize ds_align_comment()
* Use r_str_len_utf8_ansi() for line len in
* Fix glitches in asm.shortcut=1|0 with and leahints
* Fix visual leahints hotkeys
* Handle meta hints for dwords in visual disasm hotkeys
* Improve pds
json
* Do spec-following r_str_escape_utf8_for_json()
* Added new PJ simple print-json (stream) apis
assembler
* Move mipsasm from mips_gnu to mips_cs
search
* Add magic headers for GPG symmetric crypto
commands
* Fix #12473 - implement C. command
* aC renamed to ac
* aaE -> aafe (#12628)
* Support multiple ahi0 == ahi
Debugger
* When a process is interrupted by a signal, we try to figure out the reason
if the information is still available. FreeBSD/more reliable way to get
* PID's path. (#12527)
panels
* Fix a crash when V! calls graph via space key
* Fix Cursor mode and Zoom mode and refactoring
* Refactoring
* Refactoring
* Enable cursor and insert in Hexdump
* Fix a resizing issue of Panels
* Help message for Snow
* Snow is supported in Panels because it is winter
* Better Hexdump support
* Remove mouse events thoroughly from panels
* Minor fix when opening a new panel
* Cleaned up some macro
performance
* Improve io map lookup performance in presence of many maps
* Limit the blocksize in visual mode
* Optimize r_meta_find (~4x faster :D)
* refactoring ELF relocs, parse once and lookup in a hashtable
print
* Fix #12528 - Remove suffix modifier for 'j' in cmd_print.c
* Add hex.ascii config variable
* Support uneven columns in hex.cols and fix stack after scope issue in scr.rainbow
* Fix p- to honor multiple regions
* Highlight the flagged bytes on hex.style
* Implement hex.hdroff (disabled by default)
search
* Implement /s, /s* to search for sections depending on entropy
threads
* Make =h work in tasks, still more work to do to make RCons task and thread safe
types
* Fix tc and afc commands
* Implemented tc command as an alias for tuc;tsc;tec...
* Fix #11756 - Implement tsc and tuc
visual
* Add r_str_len_utf8_ansi()
* Improvements for repeated Vd
* More fix for Vg and VG
* "tT", "tt new tab, t[1-9] switch to nth tab, t= name tab, t- close tab"
* Fix #12623 - Make Grep Highlights Case Insensitive
* Fix Vg with io.va
* Introduce scr.dumpcols to support tabs and minor cleanup
* Bring back VO as al alias of V and improve modes
* Several improvements in the Visual mode (help, tabs, ...)
* Add scr.wideoff to make offsets and reg values depend on asm.bits
* Extend the use of the 't' key to manage tabs better, better ascii art
* Several bug fixes and improvements for the visual-tab
* Improve two dimensional panels with Tab and tabs with ' and ''
* Implement ecoo and extend scr.rainbow into pd
* Better asm.hints and support repeating in dw
wasm
* Fix wasm analysis for the end instruction
* Fix #12409 - wasm function ids and exports (#12414)
To Review
* Disable dbg.follow in aaft to prevent seek changes (#12657)
* Add %S for base64 in util/pj (JSON printer)
* Fix #1298 - Fix visual 'G' for r2 -nn (#12655)
* Fix #12615 - Fix renaming vars from vvv
* Fix #12434 - Fixes for exports and anal behaviour (#12642)
* Fixed loop behaviour (now jumps to correct ends, etc..)
* Fixed Exports (aka symbols)
* Fix #12273 - Force exec bit in text section (RIOSection must die) (#12643)
* Rename aftm -> aft and afta -> aaft (#12631)
* Proposal to fix ib DF issue.
* Fixed wrong bounds check while PE file resources is being parsed (#12634)
* Few compilation warning fixes. (#12630)
* use r_base64_encode_dyn
* More refactoring for panels
* Fix comments
* Add assumption comments
Remove the V@ command - not intuitive and a bit alien
rotating print modes with tab was segfault because of UB
Implement recursive interactive help
Support ranged cursor selections (for pxd, pxb, pxq, ...)
'i' in pxb visual runs Vd1 to edit the bits under the cursor
V' is no longer mixed with Vt
Properly restore the print sub-modes in tabs
Smart tab key hints (beter located and shorter)
Archs
* Added support for m680x arch
* msp430: registers names for pc, sp, sr and cg
* msp430 initialize more default op fields
Commands
* Clarify aes /Ca help message (#12580)
* New commands: aCb, aCm, aCmn, aCll, aClj, aCv, aCm, aC-, aCm-
* Fix Segfaults and Leaks in RTTI classes recovery
* Accept .?AU as prefix for msvc class name demangling
* Classes recovery refactoring
* Skip own type descriptor in msvc classes recovery
* Cleanup msvc rtti address calculation
* Recover vtable, classes, base class, virtual methods from MSVC RTTI
* Add flags for vtables and methods
* Fix #12543 - Support backward branch and bl assembling for arm64 (#12552)
* Fix odd behaviour of pdf (with regards to agfv and agfj) (#12522)
* Some code cleanup and start to introduce r_return in r_io (#12523)
add the “skyline shadow” concept
add r_io_map_is_mapped which binary-searches the skyline shadow to tell
if a pointer belongs to any map
* Fix printing of the macho UUID load command in iH / rabin2 -H
* Improve pxa, use more colors. honor VdF (pf format)
* Thu Jan 10 2019 Daniel Molkentin <daniel.molkentin@suse.com>
- Update to version 3.1.3
anal
* Add asm.hint.cdiv
* Handle ^C in agf (#12618)
* Fix size of arm64 wzr register
* Rename ac -> aoc, aC -> ac, Fix help
* Add the missing fail arc for SBRx instruction
* Fix wrong splitting of functions in aac
* Initial implementation of emu.ssa
* Fix infinite loop bug related to anal.nopskip
* Use add-sorted instead of append+sort
* Heavy refactoring and sdbify the classes storage+logic
* Implement support for nword in ahi
* Fix ESIL borrow flag handling for SUB/SBB on x86
* Display all metas in current offset instead of just one
* Fix .in=io.maps, improving aap analysis (2052 vs 41 functions find)
* Small msp430 improvements
* Fix aap for thumb
* Fix #8054 - Update cpu flags in arm/thumb ADD/SUB
* Display all metas in current offset instead of just one
bin
* Fix #12654 - workaround resolv reloc symbols in ELF
* Refactoring of get_import_addr in format/elf
* Add timestamp to iRj output
* Do not use r_buf_get_at in RBin.nxo to solve 2 clusterfuzz crashes
* Fix missing exported symbols in ELF
* Add laddr to iI
* ie/iee: remove baddr
* Use entry.init0 instead of entry0.init
* rabin2 -H and iH uses cb_printf instead of eprintf+printf
* Improve RBuffer api, start to refactor rbin to use more rbuf
* it's nintendo 64 not nintendo 32
build
* Appveyor cleaning
* Fix musl build (required for Alpine)
* Do not statically link binaries by default in sys/static.sh
* meson: Do not use glob with meson
* Initial implementation of the Alpine Linux package
* Improve the meson scripts
* Fix Emscripten support
* Switch to capstone 4.1 (#12549)
* meson: Ensure python3 and no hard-code version
* meson: Ensure R2_DATDIR, R2_INCDIR, R2_LIBDIR be absolute path
* Users may want to install radare2 to a different directory than ~/bin.
* Parse --install-path in sys/user.sh to allow for users to do so.
cons
* Fix #12667 - Fix heap overflow in RCons.grep
* Fix #12397 - Colorize grep words if scr.color.grep is set
core
* Improvements and code cleanup in util/str
* Implement ?j to get JSON output of different representations for the same number
* Fix #12482 - Unify asm.shortcut/asm.{lea,jmp}hints
* Rename scr.pipecolor into scr.color.pipe
* Initial import of the PJ (PrintJSON) API
* Fix 11141 - replaced R_ASM_BUFSIZE with RStrBuf*
* Bring back f-.localflag (same as f.-localflag)
* Add some more random "fun" fortunes
* '=h&' is not an alias for '& =h'
crash
* Fix #12479 - negative disk_reads may not be allowed
disasm
* Fix esil function comment refline when there is jump to addr
* Allow select cpu for arm.gnu
* Add support for m68xx disassembler + analysis from capstone
* Initial support for 6502 with Capstone
* Optimize ds_align_comment()
Use r_str_len_utf8_ansi() for line len in
* Fix glitches in asm.shortcut=1|0 with and leahints
* Fix visual leahints hotkeys
* Handle meta hints for dwords in visual disasm hotkeys
* Improve pds
json
* Do spec-following r_str_escape_utf8_for_json()
* Added new PJ simple print-json (stream) apis
assembler
* Move mipsasm from mips_gnu to mips_cs
search
* Add magic headers for GPG symmetric crypto
commands
* Fix #12473 - implement C. command
* aC renamed to ac
* aaE -> aafe (#12628)
* Support multiple ahi0 == ahi
Debugger
* When a process is interrupted by a signal, we try to figure out the reason
if the information is still available.
* FreeBSD/more reliable way to get PID's path. (#12527)
panels
* Fix a crash when V! calls graph via space key
* Fix Cursor mode and Zoom mode and refactoring
* Refactoring
* Enable cursor and insert in Hexdump
* Fix a resizing issue of Panels
* Help message for Snow
* Snow is supported in Panels because it is winter
* Better Hexdump support
* Remove mouse events thoroughly from panels
* Minor fix when opening a new panel
* Cleaned up some macro
performance
* Improve io map lookup performance in presence of many maps
* Limit the blocksize in visual mode
* Optimize r_meta_find (~4x faster :D)
* refactoring ELF relocs, parse once and lookup in a hashtable
print
* Fix #12528 - Remove suffix modifier for 'j' in cmd_print.c
* Add hex.ascii config variable
* Support uneven columns in hex.cols and fix stack after scope issue in scr.rainbow
* Fix p- to honor multiple regions
* Highlight the flagged bytes on hex.style
* Implement hex.hdroff (disabled by default)
search
* Implement /s, /s* to search for sections depending on entropy
threads
* Make =h work in tasks, still more work to do to make RCons task and thread safe
types
* Fix tc and afc commands
* Implemented tc command as an alias for tuc;tsc;tec...
* Fix #11756 - Implement tsc and tuc
visual
* Add r_str_len_utf8_ansi()
* Improvements for repeated Vd
* More fix for Vg and VG
* "tT", "tt new tab, t[1-9] switch to nth tab, t= name tab, t- close tab"
* Fix #12623 - Make Grep Highlights Case Insensitive
* Fix Vg with io.va
* Introduce scr.dumpcols to support tabs and minor cleanup
* Bring back VO as al alias of V and improve modes
* Several improvements in the Visual mode (help, tabs, ...)
* Add scr.wideoff to make offsets and reg values depend on asm.bits
* Extend the use of the 't' key to manage tabs better, better ascii art
* Several bug fixes and improvements for the visual-tab
* Improve two dimensional panels with Tab and tabs with ' and ''
* Implement ecoo and extend scr.rainbow into pd
* Better asm.hints and support repeating in dw
wasm
* Fix wasm analysis for the end instruction
* Fix #12409 - wasm function ids and exports (#12414)
To Review
* Disable dbg.follow in aaft to prevent seek changes (#12657)
* Add %S for base64 in util/pj (JSON printer)
* Fix #1298 - Fix visual 'G' for r2 -nn (#12655)
* Fix #12615 - Fix renaming vars from vvv
* Fix #12434 - Fixes for exports and anal behaviour (#12642)
* Fixed loop behaviour (now jumps to correct ends, etc..)
* Fixed Exports (aka symbols)
* Fix #12273 - Force exec bit in text section (RIOSection must die) (#12643)
* Rename aftm -> aft and afta -> aaft (#12631)
* Proposal to fix ib DF issue.
* Fixed wrong bounds check while PE file resources is being parsed (#12634)
* Few compilation warning fixes. (#12630)
* use r_base64_encode_dyn
* More refactoring for panels
* Fix comments
* Add assumption comments
Remove the V@ command - not intuitive and a bit alien
rotating print modes with tab was segfault because of UB
Implement recursive interactive help
Support ranged cursor selections (for pxd, pxb, pxq, ...)
'i' in pxb visual runs Vd1 to edit the bits under the cursor
V' is no longer mixed with Vt
Properly restore the print sub-modes in tabs
Smart tab key hints (beter located and shorter)
Archs
* Added support for m680x arch
* msp430: registers names for pc, sp, sr and cg
* msp430 initialize more default op fields
Commands
* Clarify aes /Ca help message (#12580)
* New commands: aCb, aCm, aCmn, aCll, aClj, aCv, aCm, aC-, aCm-
* Fix Segfaults and Leaks in RTTI classes recovery
* Accept .?AU as prefix for msvc class name demangling
* Classes recovery refactoring
* Skip own type descriptor in msvc classes recovery
* Cleanup msvc rtti address calculation
* Recover vtable, classes, base class, virtual methods from MSVC RTTI
* Add flags for vtables and methods
* Fix #12543 - Support backward branch and bl assembling for arm64 (#12552)
* Fix odd behaviour of pdf (with regards to agfv and agfj) (#12522)
* Some code cleanup and start to introduce r_return in r_io (#12523)
add the “skyline shadow” concept
add r_io_map_is_mapped which binary-searches the skyline shadow to tell
if a pointer belongs to any map
* Fix printing of the macho UUID load command in iH / rabin2 -H
* Improve pxa, use more colors. honor VdF (pf format)
* Tue Jan 08 2019 atoptsoglou@suse.com
- Update to 3.2.0
anal
* Add asm.hint.cdiv
* Handle ^C in agf (#12618)
* Fix size of arm64 wzr register
* Rename ac -> aoc, aC -> ac, Fix help
* Add the missing fail arc for SBRx instruction
* Fix wrong splitting of functions in aac
* Initial implementation of emu.ssa
* Fix infinite loop bug related to anal.nopskip
* Use add-sorted instead of append+sort
* Heavy refactoring and sdbify the classes storage+logic
* Implement support for nword in ahi
* Fix ESIL borrow flag handling for SUB/SBB on x86
* Display all metas in current offset instead of just one
* Fix .in=io.maps, improving aap analysis (2052 vs 41 functions find)
* Small msp430 improvements
* Fix aap for thumb
* Fix #8054 - Update cpu flags in arm/thumb ADD/SUB
* Display all metas in current offset instead of just one
bin
* Fix #12654 - workaround resolv reloc symbols in ELF
* Refactoring of get_import_addr in format/elf
* Fix printing of the macho UUID load command in iH / rabin2 -H
* Add timestamp to iRj output
* Do not use r_buf_get_at in RBin.nxo to solve 2 clusterfuzz crashes
* Fix missing exported symbols in ELF
* Add laddr to iI
* ie/iee: remove baddr
* Use entry.init0 instead of entry0.init
* rabin2 -H and iH uses cb_printf instead of eprintf+printf
* Improve RBuffer api, start to refactor rbin to use more rbuf
* it's nintendo 64 not nintendo 32
build
* Appveyor cleaning
* Fix musl build (required for Alpine)
* Do not statically link binaries by default in sys/static.sh
* meson: Do not use glob with meson
* Initial implementation of the Alpine Linux package
* Improve the meson scripts
* Fix Emscripten support
* Switch to capstone 4.1 (#12549)
* meson: Ensure python3 and no hard-code version
* meson: Ensure R2_DATDIR, R2_INCDIR, R2_LIBDIR be absolute path
* Users may want to install radare2 to a different directory than ~/bin.
* Parse --install-path in sys/user.sh to allow for users to do so.
cons
* Fix #12667 - Fix heap overflow in RCons.grep
* Fix #12397 - Colorize grep words if scr.color.grep is set
core
* Improvements and code cleanup in util/str
* Implement ?j to get JSON output of different representations for the same number
* Fix #12482 - Unify asm.shortcut/asm.{lea,jmp} hints
* Rename scr.pipecolor into scr.color.pipe
* Initial import of the PJ (PrintJSON) API
* Fix 11141 - replaced R_ASM_BUFSIZE with RStrBuf*
* Bring back f-.localflag (same as f.-localflag)
* Add some more random "fun" fortunes
* =h& is not an alias for & =h
crash
* Fix #12479 - negative disk_reads may not be allowed
disasm
* Fix esil function comment refline when there is jump to addr
* Allow select cpu for arm.gnu
* Add support for m68xx disassembler + analysis from capstone
* Initial support for 6502 with Capstone
* Optimize ds_align_comment()
* Use r_str_len_utf8_ansi() for line len in
* Fix glitches in asm.shortcut=1|0 with and leahints
* Fix visual leahints hotkeys
* Handle meta hints for dwords in visual disasm hotkeys
* Improve pds
json
* Do spec-following r_str_escape_utf8_for_json()
* Added new PJ simple print-json (stream) apis
assembler
* Move mipsasm from mips_gnu to mips_cs
* Fix #12543 - Support backward branch and bl assembling for arm64 (#12552)
search
* Add magic headers for GPG symmetric crypto
commands
* Fix #12473 - implement C. command
* aaE -> aafe (#12628)
* Support multiple ahi0 == ahi
Debugger
* When a process is interrupted by a signal, we try to figure out the reason if the information is still available.
* FreeBSD/more reliable way to get PID's path. (#12527)
* Disable dbg.follow in aaft to prevent seek changes (#12657)
* Fix r2 -Ad regression
panels
* Fix a crash when V! calls graph via space key
* Fix Cursor mode and Zoom mode and refactoring
* Enable cursor and insert in Hexdump
* Fix a resizing issue of Panels
* Help message for Snow
* Snow is supported in Panels because it is winter
* Better Hexdump support
* Remove mouse events thoroughly from panels
* Minor fix when opening a new panel
performance
* Improve io map lookup performance in presence of many maps
* Limit the blocksize in visual mode
* Optimize r_meta_find (~4x faster :D)
* refactoring ELF relocs, parse once and lookup in a hashtable
print
* Fix #12528 - Remove suffix modifier for 'j' in cmd_print.c
* Add hex.ascii config variable
* Support uneven columns in hex.cols and fix stack after scope issue in scr.rainbow
* Fix p- to honor multiple regions
* Highlight the flagged bytes on hex.style
* Implement hex.hdroff (disabled by default)
* Improve pxa, use more colors. honor VdF (pf format)
search
* Implement /s, /s* to search for sections depending on entropy
threads
* Make =h work in tasks, still more work to do to make RCons task and thread safe
types
* Fix tc and afc commands
* Implemented tc command as an alias for tuc;tsc;tec...
* Fix #11756 - Implement tsc and tuc
visual
* Add r_str_len_utf8_ansi()
* Fix #1298 - Fix visual 'G' for r2 -nn (#12655)
* Improvements for repeated Vd
* Implement recursive interactive help
* Support ranged cursor selections (for pxd, pxb, pxq, ...)
* More fix for Vg and VG
* tT, tt new tab, t[1-9] switch to nth tab, t= name tab, t- close tab
* Fix #12623 - Make Grep Highlights Case Insensitive
* Fix Vg with io.va
* Introduce scr.dumpcols to support tabs and minor cleanup
* Bring back VO as al alias of V<tab> and improve modes
* Several improvements in the Visual mode (help, tabs, ...)
* Add scr.wideoff to make offsets and reg values depend on asm.bits
* Extend the use of the 't' key to manage tabs better, better ascii art
* Several bug fixes and improvements for the visual-tab
* Improve two dimensional panels with Tab and tabs with ' and ''
* Implement ecoo and extend scr.rainbow into pd
* Better asm.hints and support repeating in dw
wasm
* Fix wasm analysis for the end instruction
* Fix #12409 - wasm function ids and exports (#12414)
Archs
* Added support for m680x arch
* msp430: registers names for pc, sp, sr and cg
* msp430 initialize more default op fields
- Update to version 3.1.3
* Visual xrefs with undo seek behaviour
* Improve visual panels
* Fix fffff issue when doing aaaaa in NSO bins
* Fix some memory leaks and warnings.
- Update to version 3.1.2
bin
* Fix double-free in RBinClasses regression introduced in d6fd896
* Fix #12384 - Crash in fuzzed macho binary
anal
* Honor regsize to detect UB shift overflows in ARM64 code emulation
* Fix assert in aaa when entrypoint is wrong
panels
* Some fixes in panels
visual
* Fix Visual k into basic block
* Some more improvements for the visual xrefs (fix undo seek and more)
Other
* Fix some warnings
* Fix #12376 - crash in: rasm2 -a arm -b 64 '0 ,0,0,0,0,0,0,'