Fixed ragg2 -e segfault
Fix use of ragg2 -p
Fix memleaks and null derefs in rio and rsocket
Fix some build warnings
Fix the segfaults found in the ELF parser
Dwarf parsing is only done if bin.dwarf is true
Autodetect osx, win, linux and android browsers
Default port is 9090
Add support for local networking in RSocket
Add r_str_unescape() helper function
Fix htmlgraph.sh script.
Added wwwroot in shlr/www
Swap eval/cmd load order in r2
Add r_core_cmd_str_pipe()
Use RCons in 'fs'
Changes in the disasm loop to support continuous fun
Fixes disasm after opcode payload
Added RConstr code in r_util (not yet used)
RBinSize implemented for elf, mach0 and plan9
Fix build
Dwarf info with null filenames are now supported
Fix quoted commnads parser
Quoted strings can now be temporary seeked "x"@239
Fix semicolon separated list of commands
Fix and use the base64 encoder/decoder
Siplify the config.c
Fix r_str_replace
- Random changes in libr/db/pair.. still buggy
- remove debug printfs from calc.c
- ?k command is now more usable. supports ``..` strings
- fix segfault in r_cons (nullptr)
- Add support for !! command to use r_cons
> pd|!grep eax~ebx # now this command works
* handle eval cuando escribes una y otra vez
* add support for [bracket] comma-separated list for controversial
- add api to push-back states
* Added uleb128 api in r_util
* Add p= command to show the statistics graph
* Rename Vw to Vi (write->insert)
* Add dummy base85.c
* Various binding fixes (add test3.js)
* Fix socket.vala
* Do not show fortunes if -q is passed
* Add support for anonymous macros
* Add support for quoted strings and backspaced
spaces in macro arguments
* Fix r_num_get call from calc.c (a +3 == a+3)
* Fix nested command repeaters
* Add hardcoded limit for BB analysis (fix infinite analysis bug)
- RAnal.Fcn now has a .depth field
* Fix some r_cons usage related issues in rcore
* Add 'pif' command. as in 'pdf' one resizes the blocksize
* Fix '#' command/comment again
* Fix r_io_read issue that was causing everything to go wrong
* Do not prompt or clear screen when using V in batch mode
* Optimization in r_config_get_i
* Show expression in r_num_calc errors
* Fix parsing of $$+2 in r_num_calc
- Fix uninitialized variables and other GCC warnings
- Remove unused variables, fix invalid heap ops
- ?p print error if VA is not
- Fix invalid write in r_io_cache_read().
* add support for 'mov reg, [addr]' in x86.nz[32]
- e asm.offseg=true : show in disasm
- ? f000:1345 : calculate value
- s c000:1400 : seek to segment:address
- also supports 0xf000:0x123
- segment is 32 bit instead of 16 #fun
* Add rudi_s patch to pass write_cache test
* Fix crash in r_io_free
* Move r_core_yank_to into yank.c
- atm only for files
- o `?y` doesnt works with path with spaces
* Add r_file_is_directory()
* Documentate ?V command
* Add support for prompt in r_cons_hud()
* 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
- 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
* 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
* Fix help for 'w' command
* Fix some null dereferences in gdb debug plugin (thanks @iamnion)
* Apply zed's patch fixing 32bit ptrace on 64bit boxes
* Fix 0 mod issue in r_num_rand()
- 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
- 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
- Added a r2-like API on top of it
- Make RSearch and RMagic use this new api, so
* Only load default magicpath files when no file is passed to RMagic
* Initial work on r_listrange optimization in RAnal
- #define USE_NEW_FCN_STORE
- Still work-in-progress
* Implemented a RPoolFactory singleton api to accelerate
allocations of little objects in the future
* Fix sys/mingw32.sh for osx
* Added sys/maemo.sh
- 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
* 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