* Rename r2 -H as -hh
* Add r2 -m to specify the load map address
* r2 - is an alias for r2 malloc://512
* Add rxvt-unicode ansi keycodes for HOME/END (must test)
* Use '_' key in visual mode to enter in hud mode
* Support mach0 files with multiple sections with same name
* Fix parsing of commands with nested quotes
* rename ?z to ?l
* added new command ?y to get and set yank buffer contents to stdout
* ?i stores the input into the yank buffer now
* ?I accepts a file name as argument which is loaded as hud
* ?k used as key=value temporal storage
* Add calc.c .. plans are:
- support proper parenthesis in math.c
- support floating point arithmetics
- Fix static build
- Fix dupped symbols
* Fix all errors reported by clang-analyzer
- Some null dereferences
- Some uninitialized variable uses
* Fix all important warnings from the farm
- Remove *all* uses of alloca
- Fix many %llx format string portability issues
* Fix manpage typos reported by lintian (thanks sre)
* Fix rax2 -S (by @earada, reported by @sre)
* Fix typos in manpages reported by lintian (thx @sre)
* Add r_core_file_reopen()
- 'do' is an alias for 'oo'
- close previous file
- breaks debugger reopen .. needs more work
- patch dword/qword and hexpair bytes on finalize
* Initial import of the dummy Shoorisu Yagana shellcode encoder
- just a wishlist.. do not expect it for this release
- shellcode compiler using gcc or llvm-gcc as backend
- inspired in shellforge, written in shellscript
- works on x86-32 with linux and osx
* Fix rax2 -S for binary data
* Use R_TRUE/R_FALSE instead of R_CORE_BIN_RADARE/R_CORE_BIN_PRINT
* Add notepad as windows editor by default
* Add 'T' menu at visual mode to show comments and anal info
- Select arch/bits with r2 -a and -b (old -b is now -B)
- Kinda hacky, but works for osx-x86/32/64
- Export offset information of fat bins
* Show flags in search output
* Disable interactive console in rabin2
* Do not comment int3 opcodes
r2 increase memory innecesarily when io.va=!io.va
* Add r2 -a arch -b bits
- -b flag to specify blocksize is now -B
- Sync manpage
* Added python test-leak program
* Use R_MEM_ALIGN() in r_egg_run() and rasc2
- Fix execution of shellcode eggs
* r_egg plugins now support multiple architectures and operating systems
* ragg2 now works better
- Show bitsize in ragg2 -L
- Added a sample plugin for x86-64 osx shellcode
- command can be configured, suid can be enabled
* Minor fix in r_buf api
--HG--
rename : man/rasc2.1 => binr/rasc2/rasc2.1
* Initial working version of shellcodes inside r_egg
$ ragg2 -i x86.osx.binsh -b 64 -k osx -f mach064 -o a.out
ragg2 -L : list all plugins
ragg2 -i <shellcode-plugin> : select shellcode
ragg2 -r : show raw bytes
ragg2 -x : execute -- fails :(
* Use r_lib in r_egg
- User defined shellcode plugins can now be loaded on runtime
* Fix append_bytes in r_egg api
* Implement r_egg option_{get|set}
* Use working shellcode for x86.osx.binsh example (64bit)
* Update pkgconfig templates
* Add -D flag to rasm2 (show hex and asm)
--HG--
rename : libr/egg/p/x86_osx_binsh.c => libr/egg/p/egg_x86_osx_binsh.c
- supports x86, arm, ppc, sparc, mips
* Use r_cons in r_core_bin
* Fix link of rabin2
- Use r_cons_flush()
- Refix ehdr issue
* r_io_size() now ignores va
* Add R_SYS_BASE
* Move r_anal_get_fcn_get into fcn.c
* Some more fixes
- Do not find strings in binaries with no data sections
- Add program header section underlaying the rest of sections
* Do not newline when gotoxy'ng
- visual mode is now smarter
* New ? commands
- ?p = show physical address
- ?S = show section name for given address
* Initial refactoring in r_io to make section overlaps happy
- Those changes are experimental and can lead to problems
- Do not iterate prev
- Do not sort by offset
- add 'timeout' directive
- directives can now be passed in arguments
- support more than 3 args for launching
- show default config file in help
* Added test suite for r_egg
- Fix nested conditional and loops
- Some situations can result in broken code
- Code needs a huge cleanup
* Varioues fixes for x86.nz plugin to make r_egg happy
* Install python plugins into dist-packages only
- site-packages is not the right place
* Add R2_LIBDIR and R2_PREFIX constants
* Honor LIBDIR in sdbpath for r_syscall
* Fix rabin2 -h for -C
* Show similarity distance in radiff2 -C output
* Add -O flag to radiff2 to use diffops
* Diffing threshold for basic blocks and functions is now configurable
* Explicitly delete the asm object from the nodejs example
* Update manpages
* Added r2 -H for env and files help
* Add rarun2 -h
* Show assembler/disassembler features in rasm2 -L
* Add opcode 'mov dword [ebp-12],4' to x86.nz
- Make t/test.nz work with x86.olly (32bit only atm)
* Fix unknown os issue with tiny-pe files in r_bin
* Fix some plugin names build fails in mingw32
* MAGICPATH renamed to R_MAGIC_PATH
* Add another experimental way to generate gir files
- Added dummy test.js for nodejs
* Build python-dist in farm
--HG--
rename : man/rarc2-tool.1 => binr/old.rarc2/rarc2-tool.1
rename : man/rarc2.1 => binr/old.rarc2/rarc2.1
- Added breakpoint and code analysis plugins for bf
- *mem++ != mem[0]++
- Full register get/set support
- Support for step and continue-until-syscall
- Work in progress breakpoint support
* Added bfvm_reset() hooked to plugin->kill
* Enhacements in r_core and r_debug for better debugger support
- Added plugin->step_over delegate
- Fix segfault when accessing null r.file->fd->data
* Initial first working steps of the brainfuck debugger
* Add missing io.w32 plugin (untested)
- Plugins that doesn't work on current platform are not listed
- -D : enable debugger mode for non native debuggers
- -c cmd : execute a command before showing prompt
* Initial import of the bfvm (brainfuck virtual machine)
* Initial dummy implementation of the brainfuck debugger plugin
- Needs to be integrated with bfvm to work
* Added doc/brainfuck
- Experimental.. not yet ready for release
- Add rasm2 -F flag to specify input and output filters
$ rasm2 -F att2intel
* Add new att2intel r_parse plugin
- make mrproper required
* Initial implementation of RBinClass
- Only experimental and Java-specific atm
- Add rabin2 -C to display classes
* Optimize some r_str functions
* Use pw instead of px in debugger stack view
* Disable stackptr by default
* Add OSX-32bit debugger register map
- Fix support for debugging 32bit bins in 64bit OSes
* Implement r_egg_run() -- just in time execution
* Fix r_egg string construction and argument passing
- Still needs more work, but at least some hello worlds work
* Enhacements in r_egg library
- Add support for including files
- bla.r@include($PATH);
- Proper support for goto() keyword
- Add support to get and set environment variables (need more work)
- PATH@env(/bin);
- Fix /* */ comment parsing code
* rarun2 and rasc2 now depend on r_util
* Add r_mem_protect() as a wrapper for mprotect/VirtualProtect
* Fix segfault in java class parser
--HG--
rename : binr/rarun2/main.c => binr/rarun2/rarun2.c
* Add -O flag to ragg2 as an alias for -o a.out or -o <file> (without extension)
* Add rabin2 -M (get main) for Java Class files
* Add emit_trace (code tracer) for r_egg. useful to debug
- ragg2 -a trace hello.r
- Add emit->jmp() function pointer and emit->retvar
- many fixes in function calls and definitions
- Added support for 'break;' 'break();' and 'goto();'
- Added .ret variable as an alias for eax, rax or r0
- Show debug information in sdb format
- Fix null pointer segfault
- Still work-in-progress for proper debug info
* Some work on r_egg
- Fix windows and osx default syscall tables
* Export version number in vapi R2_VERSION
* Hide ccache error if not found in sys/install
- Remove r_core deps from rabin2
- Accessible via 'wp'
* Fix build check of test program in r_db
* Pass CFLAGS/LDFLAGS to sdb build
* Add rax2 -k to not change base
- x86_64 has been tested and works fine, but needs some love
- the arm mach0 (iPhone) is not yet tested, but the bin looks ok
* Install syscall sdb files into versioned directory in lib/radare2
* Honor bits in r_syscall_setup
- Initial work on RPair in r_syscall
- Not yet integrated, but design is mostly done
* Add r_str_split()
* Add python2 and python3 makefile rules in r2-bindings
* p= command is now an alias for !rahash2 -a entropy -b 512 $FILE
* Some work in the 'G' key in visual
* Fix zoom on io.va=1
* r_sys_getcwd now returns a heap ptr and its named to r_sys_getdir()
* Show invalid instructions in 'pd'
* Fix prompt for 'w' key in visual
* More work with RPair
- Looks like it's finally usable. Let's use it from r_syscall
- Update sdb from hg
- Enhace test program
* Show newlines in 'ps' command
- hello.r now is broken because of this use
- Ignore prefixed '$' in numeric values for r_egg
* Apply @capi_x's patch fixing a bug in 'wb' and rsc/msdn
- Added support for 'add|sub [reg+delta],n' opcodes in x86.nz
* Add emit_init() function pointer to fix entrypoint issues
- ebp has no valid value defined on entrypoints
* Use trim to avoid noisy chars in symbol names for egg/lang
* Properly handle osx/w32 os strings in r_egg
* Make string construction works in r_egg
* Initial work on while() constructs
- ATM only support for linux and osx
- Do not show asm when -f is passed
- Added 3 test programs for osx/linux in ragg2
* Add support for 'lea' opcode in x86.nz
- Support more 'mov [off], reg' opcodes
- Lot of new test cases in test.nz
* Fix some segfaults and parsing bugs in egg/lang
--HG--
rename : binr/ragg2/exithello.r => binr/ragg2/t/exithello.r
- Allow to create tiny binaries with r_bin
- ATM only MACH0 format for x86-32 is supported
$ ./rabin2 -a x86_32 -c mach0:31c040682a00000081ec04000000cd80 a.out
* Rename r_bin_set_arch{idx} to r_bin_select{idx}
- New API r_bin_create and r_bin_use_arch()
- Linux/arm with debugger support
- Debian package generation tools (no need for dpkg)
- Compilation instructions at doc/maemo
* Fix install in binr and libr
- Flags are now handled
* Added 'S.' command to show begin end and name of current section
* Implement 'sn' to seek to next opcode (alias for s+$l)
- Added $l variable
* Rename r2 flag -v to -q
-V flag is now -v (all flags in lowercase
* Remove -u flag in r2 (was not implemented, but not needed)
* Added ?v command
* Check if file exists in rarun2
* Fix cmd.vprompt
* Some fixes in io.undo
- Two test cases to check undo and redo ops
* Added 2 bugs in testsuite
- Added bin.strings eval key
* Fix range check for anal/meta
* Do not exit(1) when write error on console
* Added 'ad' command to analyze data
- Find trampolines from data to text f.ex
- Supports 32 and 64 bit archs
* flags/name moved to util/name
--HG--
rename : libr/flags/name.c => libr/util/name.c
- Should trick some silly antiviruses to stop claiming that
the w32 build is malware
* Unify the python-config-wrapper scripts
--HG--
rename : binr/rasc2/shellcodes.c => binr/rasc2/shellcodes.c.src
- Added enum for VIEW_{DELETED|SPECIAL} ...
- Implement support for listing deleted files for FAT.
- Experimental state
* Add 'fs.view' eval variable
- values normal, all, deleted and special
- only 3 letters are checked 'del' and 'spe' are ok
* Add missing include files
* Parse space separated words in rax2
* Added r_str_binstr2bin() helper function in r_util/str
- Converts binary string to raw bytes
- rax2 -b is the commandline frontend for this
- Autodetects underlying filesystem
- Auomatically mounts a /root partition
- Only support for 'HFS+' filesystem (as a test)
* Added 'oo' command to reopen current file
- In debugger mode re-forks the process
- r2 -d gdb://<host>:<port>
- register maps not yet implemented
- some basic step/continue should work in cfg.debug=true
- gdbwrap instance is shared between RIO and RDebug
* RDebug is now arch-sensitive
- Plugins describe which architectures and register sizes are supported
- Native debugger is restricted to local CPU
- Remote debugger (GDB) arch can be specified with -e asm.arch=arm
* Fix some random warnings
* Move R_ASM_ARCH into R_SYS_ARCH
- Helper functions to translate id to string and string to id
are now in util/sys.c (r_util)
- Move all R_SYS_* from r_util to r_types
- Endianness, OS, CPU and regsize is now 'global'