* 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
* Honor null callback in r_cmd
* Some enhacements in the r_config_description
* Implement cmd.repeat and add two commands to handle it
- . and .. (allow to handle pyew-like newline)
* Add ia and ia* to show all binary information info
- Use r_sys_cmd_str() instead of r_sys_cmd()
- This fixes the bug of not able to interpret output of .i?*
* Some random minor code simplifications
* r_sys_getenv now returns an allocated buffer
- Need some review to avoid memleaks
* Lot of fixups in x86.nz for better 64bit support
- More opcodes are now supported (mov [base+delta], etc..)
* Make r_egg hello world work with x86.nz.
- fixed some bugs in the rarc2 language parser
- egg/t/test aims to be rarc2 replacement
- rarc2 lang code seems to compile fine now,
- r_egg now depends on r_syscall
* Fix null pointer in RNum
- Allow to create tiny elf binaries (only text section)
$ rabin2 -a x86_32 -c elf:31c040bb2a000000cd80 a.out
* Added api for 16 and 64 uint write in RBuffer
- 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()
- Registers for which version of core was compiled
* Use tar --format=posix when GNU tar
- Fixes the dependency on BSD systems
* Fix in doc/fortunes
* Fix this class pointer in asm_java
* Re-Fix uglily the bin_elf strtab issue (needs more work)
* Fix Vala regression in r_asm.vapi
- Also avoid using sprintf and strcat
- Some speedup and buffer overflows fixed
* Reimplement 'ap' command using the API
- Fixes some issues related to nested console buffers
- Faster and more reliable
* Use Color_ definitions instead of hardcoded values in r_print
* Stretch bytes and stackptr in disasm
* Fix string length in r_bin (\0 is counted)
- hello is a 6 byte length string
* Fix 'Vds' to autodetect string length
- 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
* Split core/cmd.c into disasm.c and core/visual.c into vmenus.c
* Fix some warnings reported by valgrind
* Chop instructions disassembled by udis86
* Fix visual prompt display in debugger mode
* Added 'pdi' and 'pdf' commands
- Used to print just instructions or lengths
- Documented via 'pd?'
* Added initial work on a test suite for r2
- Spot a crash!
- CC-* removes all comments
- Many bugfixes in comment handling code
- comments are now turqoise and have no ';'
* Added r_cons_column -- add support for columned text
- Added r_cons_justify to align text to right
- Added r_cons_memset as a helper
- Vv menu displays options and list in left and disasm at right
- Allow to rename functions
- Added ':' prompt in Vv menu
* Initial implementation for s/ command (search+seek)
* Use core->num->value for 'p' command (number of bytes used)
* Implement /i to search ignoring case
* Help for e scr.fkey=?
* Added r_core_editor() helper
* Fix use-after-free in r_anal/meta
* 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
* Avoid C99 stuff in anal_avr
* Escape string passed to "/ " search command
- Fix return value of r_str_escape
- Thanks Gerardo for noticing!
* Kill process before reopening in 'oo' command when cfg.debug=true
- Fix segfault when RIOMach* is NULL after reopening
- 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
* Fix build of python plugin in OpenBSD (python2.5)
* Fix initialization of dbg->arch and remove useless printf
* Do not compile cons/color.c (unused)
* Use snprintf, memcpy instead of sprintf/strcpy
- 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'
* Fix segfaults caused by read buffer overflow in x86im
- use a 16 byte delta buffer in function and basic block analysis
* Fix r_list_delete segfault caused by an use-after-free bug
- Thanks Edd Barrett for notifying :)
* Clean up many warnings reported by OpenBSD's gcc
* Reduce analysis depth to 50
* Fix OpenBSD syscall definitions and fix generator python script
- Kinda smart (150LOC)
- Fork it for 64bit hash keys (make ht64 in libr/util)
* Make RConfig use the RHashTable to resolve by name
- Code cleanup resulting in -30LOC
- O(1) access to config variables (speedup!)
- Make r_list_free and r_list_destroy take sense
- It's like r_vm, but using r_anal
- r_vm is going to be deprecated
* Added r_mem_set_num()
* Remove deprecated asm/t/fastcall example
* Fix warnings in r_syscall_regs
- Integrated with r_syscall_use()
- Fix r_syscall_reg() out of bound bug
--HG--
rename : libr/syscall/regs.c => libr/syscall/fastcall.h
* Display TODO message in r2 -L
* Implement rax2 -s - and rax2 -
* Honor dbg->tid in many places
* Implement basic stuff for dbg->reason
- Only w32 and *nix atm
- Not yet displayed or used
- Added many new reason types in enum
* Fix w32 register map
* Handle attach:// in io_w32dbg plugin
* Implement w32 process and thread list
- You can now select the thread
> dp # list pids
> dp=1424 # attach to pid
> dpt # list threads
> dpt=580 # select thread
* Added dummy code to list windows
* Fix vm arch setup at startup
* Fix flag set in visual mode when cursor is enabled
* Filter string names before adding flags in r_bin_load
* Fix r_flag_name_filter (do trim)
* Fix r_sys_rmkdir
* Update TODO
* Some alloca->malloc fixes for w32
* More error checking in r_sys_rmkdir
- Uses the new r_sys_mkdir_failed() api
- works on windows and posix
* Disable asm.dwarf when the plugin fails to init
- Displays a warning message
* Added 'e scr.cols=16'
- Determines the width of the hexdump (px, x)
- Used also by Visual mode hjkl dimensions
* Improving rax2
- Support for many bases.
- Add -s flag for transform byte to bin (ej: "48454c4c4f" to "HELLO")
- Add -e flag for endian swap.
* New r_num_to_bits converts nums into binary representation.
* Added r_list_foreach_prev()
* Add RSyscallPort to handle Hardware I/O ports
* Remove libr/TODO and refactor /TODO
* Link with 'ld' in rarc2-tool for nasm
- Added help in 'b?'
* Added support for bit-collection registers
- eflags is now displayed as a string
- debug/p/debug_native.c needs a correct x86 flag string
* Fix segfault when listing empty register sets
* Add support for /**/ style comments in rarc2
* Fix libr2.a warning message
* Fix .string "" directive in rasm2
- Now works like in GAS. escape chars are handled
- and quotes are stripped
* More fixes for rarc2 on ARM
* Implement .fill directive in r_asm
* Added asm.profile in r_core
* Added r_str_bits as a helper to display register flags
- Still not yet usable, but
* Add .byte and .hex in r_asm as directives
* Add test case for r_word api
- Fix r_word_count()
* Also handle .globl (and .global) to keep GAS compatibility
- TODO: add .word .fill .align and others
- Analyze code in order to do syscall analysis
- Some fixes in r_vm to make it work
- Add 'av' command to interact with the virtual machine
- added r_str_subchr helper func in r_util
- Add function variables sorted by delta
* Initial import of the io_gdb plugin
- Statically compiled plugin by default
- Use libgdbwrap
- Implements just raw IO read/write
- Needs more testing
* Added r_anal_fcn_to_string() and get_var()
- vars now have array size and direction
* Some random fixes
- minor opimitzation in autocompletion (thx edu)
* Added Vtlr command to rename in visual tracked flags
* Minor refactor in TODO file
* Display xref data (Cx/CX are broken atm)
* Added Vx command
* Compare flag names with ut64 hashnames (faster execution)
* Swap d->i and x->d print formats
* Hint in r_str_cmp
* Fix ^D using threaded load
* Only load rabin info when no project file exists
* r_core_project_open does not works on directories now
* Sync r_core.vapi
- Fix string filtering
* Display string references for ARM (load indirections)
* Fix numeric indexing of branch references in visual mode
* Display '>' char for call instructions
* More work on RMeta
- unscape strings to avoid \n and \t
- handle correctly the 'Cs' command
- Add partial documentation for the rest of 'C' commands
- Add r_diff_gdiff (initial import of the graphdiffer)
Next step is remove the mnemonics array and use a hash function
The bb_diff function will change too :)
- Add flag -g to radiff2
* r_core
- Add cmd 'cg [file]' for graphdiffing
- Add cmd 'agd [file]' for output graphdiff results
- Modify r_core_anal_graph() for supporting graphdiffs
* r_util
- Implement more r_big functions
- Make other more gmp-like
- Using continue-until-opcode-type call
- Implemented continue-until-syscall in the same way
* Fix r_str_hash() algorithm to avoid colisions
* Added r_sys_bt()
* Update configure
* r_big
- Prepare big.c to add gmp code
- Implement r_big_{new, free} with libgmp
* r_anal
- Change the type of {bb,fcn}->fingerprint to RNumBig
* r_flags & r_core
- Add cmd 'af-*' which removes all flags
* More seek undo pushes in visual mode
* Added 'd' key in visual mode 'df' defines a function
* Huge repointerization in RCore
* Fix r_num_new() constructor
- simplify local var/args analysis
- Fix var sign in x86im plugin
- Add analysis support for some missing opcodes
* r_parse
- Fix asm.filter
* r_util
- Change r_hex_bin_truncate type to st64
- Do not used trashed bytes from r_file_slurp_range
* Implement r_sys_cmd_strf
- Simplify code in addr2line r_bin_meta plugin
* Install again in site-packages for py2.6
- Debian/Ubuntu uses dist-packages, but not in arch
- Linking fixed for r_sign and
* Fix some reads out-of-bounds in r_bin_elf
- Use __strnlen instead of ELF_STRING_LENGTH
- Some simplifications using macros
* Open plugins in radare2 found in '.' by default
- Make w32 happy
- Fix RLib for w32 and local plugin files
* Implement r_sys_cmd_str() for w32
- Also r_sys_setenv()
* Fix printfs in lib/t example
* win7 syscall list is now default windows one
* Added 'r_sys_perror' to make it portable on *nix and w32
* Rename RLibrary into RLib
* Fix flagSort command (fS)
- sort by name is now done by strcmp
- str_hash and str_hash64 are not enought
* Use r_cons in flag/t .. we must drop this dependency
* Add 'all-flagspaces' entry in Vt menu
- When switching back to visual mode, the
print mode is not lost
* Some code cleanup
> s 0&&./x 6c..62&&p8 3@@hit
> zb function 89e55383ec....38 # binary mask inline
- works like r_hex_str2bin, but converts binary mask and keyword
* RSign now uses r_cons_printf from core.
* FunctionPrintf typedef to bypass some warnings
* Added r_mem_eq
- Handled by 'S' command
* Added dummy 'z' command to handle zignaturez
- Added more dummy 'az' commands
- RCore now depends on RSign
* Some refactoring and speedup in _update method of RSearch
- Added support for distance search (maybe buggy and incomplete atm)
- Fix binary mask for keywords after previous commit
* Added 'r_str_rwx*' helper functions in r_util
- e io.cache=true
- Fixes support for overlapped changes
- Implement cache_list
- We can merge it to remove vm and undo writes with this
* Some code cleanup in vm
* Fix division by 0 bug notified by @ash
* Some random makefile cleanup
* Use RMemoryPool and RList in RSearch
- Store hits in RList if no callback defined
* Fix constructor of r_mem_pool if alloc fails in init
* Remove unused file from search/ binparse.c
* Merge r_trace into r_debug (RDebugTrace)
- Implement 'dt' command to manage debugging traces
- TODO: Track register values and memory changes
- Added dbg.trace and dbg.trace.tag
* Added r_sys_now() to retrieve ut64 value of current time
- Must check endianness issues
* Initial work trying to implement RPATH support to ELF
* Less flat command tree
- 'dt' is now 'dbt'
- 'dk' is now 'dpk'
* Some more random syntax cleanup fixes
* Say 'yes/no' instead of 'ok/fail' in check-langs script
- Integrated with core 'as' command. as? for help
- Display formatted parametters of syscalls
- Needs to fully implement this everywhere
- Syscall argument parsing is not yet complete (<4args)
- r_debug_arg_{set|get}
* Implement continue until syscall on Linux debugger backend
* Lot of syntax cleanup to use the new code convention
- Clean r_sign, r_search, r_syscall
* Define global R_SYS_ARCH, _OS and _BITS
- Handle asm.os and asm.arch to hook r_syscall plugins
- Display 8 or 16 zeros depending on asm.bits
- Added r_str_filter () to filter nonprintable chars
--HG--
rename : libr/search/stripstr.c => libr/search/strings.c
- Flag imports and symbols as fcn. under the namespace 'functions'
* r_core_anal
- Flag analyzed function
- Implement agf
- Minor fixup (check if r_io_read_at returns blocksize)
* r_util
- Fix r_str_word_getfirst
- Added endianness in r_bp
- Add breakpoints for mips and ppc
- Needs to be used from r_core (dbt?)
- Added dummy bp_watch api (WIP: needs access to r_reg)
* Merge r_range inside r_util
* Added BIT_{SET|CHK} helpers in r_types_base
- Define ST32_MAX
--HG--
rename : libr/range/range.c => libr/util/range.c
* Added 'dsl' command to step until next meta information
line is reached.
* Display file:line with context 5 with 'CL' command
- Fix r_file_slurp_line
* Added 'dcu' command to continue until an address
- bp,dc,bp-
* Added dbg.swstep to configure stepping debugger algorithm
* Add file.type. fixes warning. Defined by rabin2
* Load rabin2 in va format when debug or va modes are enabled
* Ask to kill the child before quitting
* cmd_quit is no longer calling 'exit'.
- Returns R_CORE_CMD_EXIT (-2)
- Return value can be captured at core->num.value
* Implement native kill as a debugger callback
* cmd.visual is now cmd.vprompt
* Add r_debug_reg_{get|set}
- Handle register name aliases
- Works only with ut64 type
* 'dr:eax' is now 'dr?eax'
* Lot of random syntax cleanups
- Use it from p/debug
- Now is possible to debug programs with arguments
- Added test program in util/t/argv
* Fix pd/pD
* Clean and fix the native debugger plugin
* More random code syntax cleanup
* Rename io plugin names without the deprecated 'io_' prefix
* Fix mk/stat-make.pl (missing ;)
- env.sh now also uses DYLD_LIBRARY_PATH
- Fixes in ollyasm/dis to link with no global variables
- Remove double definition of global _state
- Same for asm_java
- Split -shared and -Wl,-R into LDFLAGS_{LIB|LINKPATH}
- Fixes linkage in osx
- anal_x86_bea plugin now links correctly against BeaEgine.o
- dietline is now #include'd from line.c
- no debugger support yet
- Do not externalize any variable. Some linkage does not support it
* Remove bininfo dependency .. aims to be merged into bin soon
* Added r_str_case() method to change to lower/upper case a string
- r_util is now bindable from swig !!
- Added test cases for r_util
- r_flist has been mirrored in C, to keep API consistent
* Rename RIO->seek into RIO->off
- There's a method with the same name
- Also rename list.h ->next and ->prev into ->n ->n
* Apply patch from whats fixing 'r_cmd_str' EOF for stdin (Thanks!!)
- Added test program to ensure stdin food works
* Allow '-f -' to rasm2 (assemble file from stdin)
* Added test case in python using RBin, RAsm and RCC to compile
and assemble a code to be injected in the given target program
* Add ruby test for r_bin
* Remove old r_array stuff from r_types.h
* Fix swig/Makefile to install ruby libs into ruby1.8 libdir too
--HG--
rename : libr/include/r_array.h => libr/include/r_flist.h
* Remove deprecated r_bin.i.experimental
* Define r_array functions in r_array.h as inline static (list.h like)
* Minor fixups in some vapis and headers
* Update python examples
* Exclude problematic libs from swig/rules.mk (temporary)
- Uses the mercurial's C algorithm for delta diffing
- Remove r_diff_lines .. do we need a line-level diffing tool?
- Remove -l flag from radiff2
* Rename RIo to RIO
* Added r_reg_arena_new () to simplify arena creation
- Some sanity fixes in r_reg arena.c
* Add -C in rasm2 to output in C string format
* Initial working implementation of r_debug_execute to inject code
in child process and restore memory and registers
- Returns %a0 register value in ut64
* Added 'c' command to r_core - to compare -- just dummy
- Will use r_diff
- if rdiff callback returns NULL, we must stop scanning
- old r_diff_buffers_delta is now named buffers_radiff
- Added test files in diff/t/{file1,file2}
* Added doc/plugins documentation file
* Fix ${EXT_SO} in bin/p and asm/p (dejavu?)
* Added dummy asm_gas r_asm plugin
* Various random syntax fixes
* Rename 'dbg.ptrace' to 'dbg.native'
* Added r_debug_io_bind () to sync dbg and bp io_bind
* r_debug_map_list is now in a nicer format
* Append ${EXT_EXE} in diff/t
* Add missing util/log.c and vapi/r_line.vapi
--HG--
rename : libr/debug/p/debug_ptrace.c => libr/debug/p/debug_native.c
rename : libr/debug/p/ptrace.mk => libr/debug/p/native.mk
- Little integration from r_core_cmd (dm show maps)
- Uses RList. Allows user and system defined maps
- Added backend implementation for BSD and Linux
- mem.c -> map.c
* Fix some more random warnings
- Rename rList into RList .. as it should be
- Added r_list_unlink method
* Rename MALLOC_STRUCT as R_NEW ..shorter and smarter
- Needs propagation
--HG--
rename : libr/debug/mem.c => libr/debug/map.c
- asm.arm plugin is now embedded into r_asm as static plugin
* Added register alias names for r_reg
- Add register names for x86/32/64/arm
- pc, sp, bp, a0, a1, a2, a3
* Do not build lua5.1 if no lib found
* Enable cfg.ffio in debug mode
* Some code simplification in r_asm
- Fix a negative offset bug in elf on ARM binaries
* Out of file reads (padding) filled by 0xff
* Added r_sys_cmd () to wrap r_system()
* Fix debug registers command to display segment and flag registers
- Some draft changes in r_debug (signal handling and backtrace)
* Fix warnings in r_line
* Many more indentation fixes
- Added st32 and st8 basic types
- Reduce the use of global variables by packing all them in a struct
- Redesign the autocompletion method for r_line
- Not yet finished, but so much refactoring out there :)
- Using the singleton format (r_xxx_instance)
- APIs has been cleaned up
- Some bugs fixed
- Syntax fixes
--HG--
rename : libr/cons/print.c => libr/cons/filter.c
* Move empty strsub.c to util/
* r_flags depends on r_cons (yeah, it shouldnt..)
- just for tmp fun
* Fix some methods and declarations in r_bp and r_core vapis
--HG--
rename : libr/cons/strsub.c => libr/util/strsub.c
- Fixes ruby warnings
- Follow java syntax conventions
- Helped to identify and fix bugs in many vapis
- Sync swig examples
- Add test-r_core.rb (ruby test for RCore)
* Some work in r_cons, some refactoring and cleanup
- scr.html is now working again
- w32 cons support should work now
- Rename r_cons_get_columns -> r_cons_get_size()
- But it needs more work
* Typedef all r_range, r_parse and r_anal structs
- Add missing r_lib.pc in configure.acr
* 'make' clean now removes the libr* in swig/${LANG}/
* Fix linking of r_core (r_bin not found)
* Lot of fixes for valaswig. libr, r_io and r_debug
are now usable from python/perl/ruby
- Fix many .vapi files
- Enhace the libr.pc
- r_hash.deps must be removed
- Depends on valaswig-head
- Added R_BUF_CUR for reading at current offset
* r_bin
- r_bin_java rewritten using r_buf
- Removed unnecessary headers
- Some minor fixes in r_bin_pe and r_bin_elf
without PIC code (only static libraries, and link binaries)
- Fix linking order dependencies
* Fix some missing EXT_EXE
* Add some definitions to make debug_ptrace register work
on Solaris and *BSD (no windows yet)
- Some fixes for mips, x86, x86-64, arm and powerpc
* Initial import of rsc2
- Added intel2att rsc2 sample script
- Many API rethink for the r_bp/r_reg/r_debug bizarre triangle love
- Support for recoil for software breakpoints
- Some debugging printfs.. next step, hardware and mmu breakpoints
* r_bp_restore is now used correctly from r_debug
- sw bps are written when returning to proces and erased when back to dbg
* Fix build of bp plugins on w32/osx
* Add support to 'repeat' commands from r_core
- 3ds ; same as 'ds&&ds&&ds' ; perform 3 steps
* Fix a memory leak in rBreakpointItem constructor
* Fix some possible segfaults in r_debug
* Fix double definition cause segfault in r_reg for r_reg_types array
* Fix rLibrary/r_lib typedef class name (fixes valaswig compilation)
- Add r_buf_fread for "format read" (needs a better name)
- Fix segfault in set_bytes
- Fix r_buf_read
* r_bin
- Refactoring of r_bin_mach0 using r_buf and r_file
* Fix build of gdbwrapper debug plugin
* Fixes related to the r_iter -> r_array rename
- rbin vapi is broken now.. waiting for major changes to sync
* Fix build of socket/proc on non-gnu systems
--HG--
rename : libr/util/iter.c => libr/util/array.c
rename : libr/util/t/iter.c => libr/util/t/array.c
- See doc/windows
* Rename config.mk to global.mk
- Avoid name collision (cascade includes in rules.mk)
* Added ${EXT_EXE} in some test program directories
* Split rules.mk into config.mk
- Some scripts just need to get the environ (config.mk)
- They dont need the rules
--HG--
rename : config.mk => global.mk
- draft for the new r_bin api
* Rewrite r_iter API to be consistent with Vala and GLib concepts
- Added r_iter_init
- Add test case to check r_iter from C and Vala using static
and allocated lists and syntax-sugar iterators
- Thanks! :)
* Added dummy r_socket_proc_* api
- Needs to be moved outside r_socket
- Added two non-working usage examples
* Add some checks and enhacements to the r_buf API
- Implemented in r_util.vapi
* R_APIfy the r_cache api
* Add missing methods in r_socket.vapi
* Update the README file in r_anal describing the
new design of r_anal..not yet finished
- Propagate @VERSION@ from ACR
- All *2 apps are now supporting a -V flag to show the version
* Fix .dr* command in r_core debugger
- dr now supports [regtype] [bitsize] arguments
- Check dr? for help
* Added some 8, 16 bit registers to the dbg.ptrace backend
- Just for testing :)
* Check build of the whole source tree
- test programs are now in ${prefix}/bin/libr-test
* Fix lot of warnings and bugs
* Simplify some code
* Some rapification
* Fix segfault in r_reg related to unallocated arenas
- New function r_reg_type_by_name() resolves string->id
* Fix help of rax2
* Minor cosmetic fixups
* Handle binmask==NULL in all _add methods of r_search
- Added empty declarations of reset() and kw_reset()
* Various random fixes in some vapis
* Some random warning fixups
* extern plugins defined in handle.c for asm, bin, .. cleaner
* RAPIfy the r_bininfo
* Initial implementation of Rarray Iterator
- Needs some tuning in core Vala..but it is ok for demos
- r_bin API is now using the Rarray iterator
- Added Vala test program for it
* Fix build of some test programs
* Added r_diff and r_bininfo VAPI files
- The APIs are inconsistent and untested. Proposals welcome
- Fix possible overflow in r_bininfo
* Initial implementation of pool.c
- Implements Memory.Pool class (Extracted from 'alt')
- Added test program
* Make radare2 debugger interact with r_reg
- Register profile is now provided by the r_debug plugin
- |reg and dr works fine now
- Fix reg_sync and reg_read for dbg_ptrace
* Clean some warnings
* Fix build
* Fix x86-linux using sys/user.h and getoffset() macro
* Some more work on r_mem_copybits
- Bit level registers are now working (get/set)
- reg/t test example is now getting/settings bit flags
* Added support for full serialization of all registers
- Does not yet supports bitlevel registers
- Added test program modifying and showing regs
- Added dummy x86-linux.regs register layout
* Added r_mem_copybits() in r_util
- Bitlevel precission for a memcpy
- Perform statistics about XXX and TODOs
* Change signature of r_debug_mmu_
* Added io->cached_reads
* RAPIfy the r_lang
* Reviewing of the r_lib API
- Write the vapi file
- Check for null mallocs
* Fix build of r_reg
- Fix warnings in many places
* R_APIfication of r_anal
- Fix probable segfault in x86_bea
* Use macros to define plugin names
* Fix build of radare2, rasign2 and debug/t/main
* Call sundo_push() when io_seek
* Added toggles for seek and write undo levels
--HG--
rename : libr/sign/t/rasign.c => libr/sign/t/rasign2.c
* Populate r_io_lseek -> r_io_seek refactoring
* R_APIfy a bit the r_hash
* Also build hash/t/hello program
* Fix some warnings and build blockers
* Make rahash2 read from files (using slurp)
* Added r_buf API in r_util (interacts with r_io)
* Add initial template for r_io_bind
- Needs some more work
- filedescriptor is only defined by r_io_set()
- the rest of functions just take one argument less
- there are not enought filedescriptor changes to force fd resolution all the time
* Fix memory leak in r_io_open
- Better error management
- Fix Makefile warnings in libr/io/p
* Added read_at and write_at helper functions
* Random indentation fixups
* Added shm.mk and malloc.mk
* More useless work for r_iter
* Fix non-static plugins build in r_debug and r_io
* Fix debug_ptrace - working with example but not in r2
* debug/t/main.c is now working correctly
* Massive R_APIfication in r_io and r_util
* Added r_io_read_i to read from memory as a ut64 in any endian
- read4.c example uses this new function
* Fix build of r_io static plugins
* Some more checks at random places in r_io (more stable)
- r_io_set_fd() simplifies fd and plugin setup
* Added |pid command for ptrace io plugin
* Added io->printf to avoid use of forced 'printf'
* Add more lib_types names. fixes probable segfault
* Added hg-ci hg-utils makefile target
- r_debug_ptrace is now static by default
* Some code cleanup and warnings removal
* Added hg-utils.mk and MKPLUGINS directive in user-config
* Initial implementation of dbg_gdb r_debug plugin
- Import ERESI's libgdbwrap from r1
* Add some missing files (asm/p/fastcall_mips.h, core/t/ragrep2.c)
* Added r_str_bool helper to get "true"/"false" from int
- Fix some function signatures
- Disable CPP macros by default
- Added a separate iterate example in util/t/iter.c
* Initial non-working integration with Vala generics in r_util.vapi
- Vala does not yet supports non-gobject generic classes/structs
- Use the new 'asm-like' build system for r_parse plugins
- Added new callback to 'assemble' parseable expressions
into compilable asm code
- Refactorize and remove warnings in parse_mreplace
* Added r_str_char_count() in r_util
* Some fixups in the fastcall code in r_asm
--HG--
rename : libr/parse/p/mreplace/mmemory.c => libr/parse/p/parse_mreplace/mmemory.c
rename : libr/parse/p/mreplace/mmemory.h => libr/parse/p/parse_mreplace/mmemory.h
rename : libr/parse/p/mreplace/mreplace.c => libr/parse/p/parse_mreplace/mreplace.c
rename : libr/parse/p/mreplace/mreplace.h => libr/parse/p/parse_mreplace/mreplace.h
- Add r_str_dup_printf
* r_bin_elf
- Huge refactoring
r_bin_elf_get_{imports, symbols} will be modified soon
r_buf|r_io will be used, so 'swap-endian' and 'malloc-lseek-read' calls will be removed
Need to rethink section resize (temporary disabled)
* rabin2
- Refactoring
* Fix help for ?$ -> ???
- New variables (sync with r1 are available)
- $$, $$$, $e, $j, $f, $r and ${..}
* Implement wf, wF and wt (but not wtf :P)
* Fix some minor warnings
* Added new slurp_hexpairs helper
- Plugins needs to be synced
* Added x86nasm assembler backend to handle x86-64
- Not yet working. Pretty buggy :)
* Fix support of building static plugins for r_bp
- Statically link r_bp_x86 by default
* Implement ugly r_sys_cmd_str() command in r_util
- r_cons_user_fgets() is a configurable function pointer
- Simplify build
* Initial import of r_sysproxy
- Directly copied from r1 (no api or anything working yet)
* R_APIze r_vm and r_print
* Make r_core_seek more consistent
* Move r_cons_progressbar() to r_print
* Rename visual 'x' -> 'w' (oops)
- 'a' and 'w' are now compatible with cursor mode
* Implement r_sys_usleep() on w32 and fix r_sys_sleep()
* R_APIze r_config
- Added r_config_swap
- Fix a bug in r_config_set for bool types
* Some more rules in doc/syntax
* Some integration from r_core to r_meta
- CC command is now working to add and remove comments
- Make 'C' show help and 'C*' list metadata
- CF is semi working
* Show comments in disassembly 'asm.comments'
* Added 'e!' command to toggle a eval variable value
- e!asm.bytes ; for example
* Drop arrow-debugging in r_core_visual
- Added key ';' to add comments
- Do not 's eip' on debug
* Fix build of flags test program (thanks graz!)
* Added r_str_chop_ro (read-only string chopping)
- ATM lives in r_util, but should be moved to btree.h at some point
Like the kernel's list.h does.
- No node tree path find optimization yet
* Integrate btree with r_flag API
- Accelerates the resolution of flags per offset
- At some point we will need to use paralel tree's to store all the
nodes optimized by different fields (name, offset, ...)
* Added test program for flags and btree algorithm
* Change the print format of flags in the disassembly
* Add 'autogen.sh' to ease the use of 'acr'
- Added USERCC and USEROSTYPE configuration flags
--with-compiler : select a compiler from mk/
--with-ostype : select a target OS (not required for ming32 f.ex)
* Add language bindings APIs from radare1
- Fix some issues from the ruby language binding
- Checks if file exists before slurping and causing a ruby segfault
- Added language destructor (.fini pointer)
* Rename str_clean into r_str_chop
* Initial work on the port for ming-w32
* Show flags instead of bytes in disassembly (smart disasm)
* New r_sys_{get|set}env (for portability issues
* Added flags -i and -l to radare2
* Fix warnings and random code cleanup
* Added r_flag_get_i
* Fix some valgrind warnings
- The debugger+visual is now working more stable
* Comment 'strip -s' command in stripsyms.sh
- We need a better way to configure all this stuff (spp?)
- Remove config.mk includes from config-user.mk
- Fix sys.c missing include
* Added R_LIB_TYPE_LAST and implement a getter
* Add some missing license headers
* Up config.mk version to 0.2b
* Cleanup TODO
* Initial implementation of r_cache (optimization for disassembler)
* Add readme for r_sign (some randome notes and ideas)
- Extend API to get file and line numbers from a virtual address
- Added addr2line-like test program 'rabini'
- Added 'addr2line' plugin
* Add r_file_slurp_line helper in r_util
* Added initial work to support multiple compilers (gcc only atm)
- tcc support under development
- Make HAVE_REGEXP be optional
- implemented core_seek_align function
* Added '<' and '>' commands, but they are not yet working
- Should be renamed to 'sa' (seek aligned)
* Fix hexdump ascii column color issue
* Fix print/t/hex hexample
* Add some dummy floating stuff for r_util
* Use IFDBG instead of custom 'D' in util/num.c
- Stripped down version based on the r1 implementation (ow yeah)
* Fix build of r_bin (oops)
- Now ERR() is a static inline function instead of a macro
* Add 'var' in build liblist and 'vapi/t' for make clean
* Add ^C handler for r_cons. support for callbacks
* Add support for ./m ELF for example to interpret the output of commands
* Fix a bug in the regexp algorithm that can get into infinite loop
* Binmask can now contain non hexpair values
* Add '/m' search regexp matches using the new R_SEARCH_REGEXP algorithm
- Handle ^C in search loop..needs to use callback method
* Properly cleanup the flag names
* Added asm.bits and asm.os eval vars
* Added some random tips for debug in README
- Stupid snippets for import/export data between modules
- Register support requires a rethink
* Initial work on the integration of r_io_undo() api
* Added cmd_meta in r_core->cmd
* Cleanup data type range before adding new one in r_meta
- mix idea for meta+ranges (commented)
* Search -> initialize renamed to begin()
* Added memcmp_mask for r_util
* Fix crash issue in perl module
--HG--
rename : libr/search/xrefs.c => libr/search/old_xrefs.c
- Added test program that sets and gets metadata.
- It needs much more features and stuff
- Integration with r_core is mandatory! :)
- Hard simplification from the old r1 code
* Added r_str_concat and r_str_concatf in r_util
- Added initial cursor support
- Q also for quit
- Added visual prompt
* Added date.c
* Move cursor responsability to r_print
* Make r_cons_invert work also for noncolor terminals
* Added r_num_minmax_swap_i in r_util
* Initial implementation of the visual mode in core
* Added pc and ps print formats (c code and string)
* Added '/' command in core (search hexa and str)
* Add '-d' to radare2 test program
* New r_file_path to resolve file path thru $PATH
* 'make install' works everywhere
- Previous commits has been reported in the ChangeLog file
- hg log has been lost (moved inside ChangeLog)
- Old radare1 repository has removed all the libr