@radare radare released this Jan 8, 2019 · 414 commits to master since this release

Release Notes

Version: 3.2.0
From: 3.1.3
Commits: 251
Contributors: 43

Changes

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

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

Authors

Assets 2