Skip to content

@radare radare released this Sep 3, 2019 · 70 commits to master since this release

Release Notes

Version: 3.8.0
From: 3.7.1
To: 3.8.0
Commits: 188
Contributors: 30

Authors

Changes

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
Assets 2
You can’t perform that action at this time.