- 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
- 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
- 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 ;)
- Use 'asm.arch=ppc' in POWERPC by default
- Added r_io_mach for MACH microkernel debugging
- Compiled as static plugin by default
- Added darwin mach/ptrace stuff in debug_native
- Very ugly code.. needs some refactoring
- Add powerpc-OSX registers description map
- Added temporally .h files in debug/p/native
* Display verboser version message with 'r2 -V'
* More linking issues fixed for OSX
* Build gdbwrap debugger plugin
- Not yet usable
* Added R_SYS_OS R_SYS_ARCH and R_SYS_ENDIAN strings
* Deprecate DEBUGGER variable
- 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
* 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
- 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
- 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
- hg clone http://hg.youterm.com/valaswig
* typedef all structs as r_asm_item_t -> rAsmItem
- Sync typedefs with classnames for vala and valaswig interfaces
- Needs more work and testing
- C code keeps fully compatible
* New script to build valaswig bindings (swig/libr-swig.sh)
- Needs integration with 'make test'
- This will help to create a decent unit testing framework
to find bugs in bindings and enhace the design of APIs
from a centralized way keeping compatibility for all the
languages supported by swig (c#, python, java, ruby, perl, ..)
* Fix vala test programs build
- 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
* 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
- 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
* 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
- 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_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
* Initial work on integrating the anal_x86_bea plugin
* Adds the concept of 'opcode families'
* Added 'cmdhit' from e cmd.hit
* Fix r_print_hexdump ascii column
* More R_APIziation
* Cleanup some warnings
* Added keyword index attribute to the keyword structure
* 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
- Now build by default with the rest of libr
- drop read_at dependency for r_trace
* Some stuff has been moved from r_util to r_types
- max/min int values and so on
- eprintf lives there now
* Add R_API directive in r_types
* Huge refactoring for r_print
- C code format
- formatted memory structures also working (not finished)
- unix, dos and w32 timestamps
- Added p->interrupt to break loong loops (should we think in a limit?)
- print formats that need processing returns the number of bytes processed
- if they return 0 is because they failed
- Much more simplified code than the one in r1
- Use p->printf instead of r_cons_printf (aim to independize from r_cons)
- Some basic support for color output
* 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