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
Added 'cc' command to compare bytes with column hexdiff
Added r_print_hexdiff() public api
Added diff.from and diff.to eval configuration variables
Visual 'D' used to setup the visual diff offsets
Press 'c' to enable cursor in visual diff
Press '<tab>' to cycle between diff.from and diff.to
Use RCore's RNum from RConfig
Fix bug in r_core_read when io.va and sections used
Fix bugs in r_io_maps and io.va
Multiple files can now be opened and compared with mapping
- Support negative integer values in rax2
- Fix column selection draw in r_print_hexdump
- Implement p=p and p=e commants
- Disallow visual insert if file is readonly
- Similar to pZ, but
- Honor -w flag to create file if possible
- Use new r_io_create() api
- Add scr.sparse to show hexdump in sparse mode
- dro is working again
* Dummy agt command (analyze graph to destination)
- Still wip, requires some changes in r_anal api
* Handle ap? command
* Use core->dbg->bits in core_reg
* dbt - backtrace accepts an argument to redefine ebp
* Use r_core_seek_delta in visual (fix Vh = 0xFFFFF..)
* 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
* Add support for wide string dump in r_bin
* Fix detection of data section in PE
* Show error if temporary seek flag does not exists
* Fix wrong disassmbly with 'pd' (invalid)
* Properly detect end of functions in visual
* Apply rudi_s patches for cache
* Show push flag information if available as a comment
* Clear screen after quiting Visual
* Remove unused function
* 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]
- Problem in r_io_desc_free called twice
* Compact ??? help
* Random indentation fixes
* Added support for binmask searches
- /x 123456 ffc0e3
* Added BLOCK and BYTES in r_core_sysenv_begin()
* Hacky fix for autoblocksize with pw
* Enhacements for the r_cons_hud
- double-ESC to quit menu
- tab and up/down arrows select row
- first row is executed if enter is pressed
* Add ?y[ynkm] to
- ?iy ?in ask user with yesno dialogs
- ?im msg show message
- ?ik press any key
* Add hud.once eval var to run hud forever
* CC != CC*
* 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)
- Clear the whole screen, do not trash
- Refactorize code from RCons into RConsW32
* Apply @earada's patch with minor fix for undo seek
* Ignore */+- in non-cursor visual and autoblock enabled
* 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
* Make 'fd' work without arguments
* Added r_flag_get_at () to handle deltas
- Show it in visual title
- Used by 'fd'
* Colorize trap instructions in bright red
- 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
* 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
* 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
* Add dummy 'dca' command. needs to be implemented
* Reload all symbol information when io.va changes
* Only print jumpkey references in visual mode
* Reduce the autoblocksize in visual for disassembly
* 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
* 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!
* Bring back the ';' prefix for comments
* Added sf/sF commands to seek next/previous scr.fkey
* Implement /i to search strings ignoring case
* Fix '@' invalid reads issue
* Added 'cmd.cprompt' for column prompt in visual
* Add 'search.kwidx' to store last search index count
* Added 'ee' to edit with cfg.editor the value of an eval variable
- 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
* Added r_cons_set_cup() method to RCons api
- Enable/Disable terminal scrolling by using the cursor
addressing mode of the terminal.
- Those escape codes are terminal specific and not portable
- Added test program to display cup information
- Thanks eddyb for noticing!
- 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
- Get out of RCore! - rebuild required
* Fix cast after scaling entropy (Thanks Glyn)
* Fix indentation of function/nonfunction code
* Add 'f' and 'F' keys in visual mode to seek next/prev
- between functions, flags and search hits
- Use 'e scr.fkey' to configure the mode
* Fix prompt in visual mode for ':' key
* Fix visual glitch in Vej and Vt
* Handle demangled names as comments
- in rabin2 and core->bin_load
- Needs to be a RAnalCall at some point
- bin_java calls the dummy r_bin_demangle_java
- Add R_BIN_NM_ANY enum
* Add asm.lbytes config to align disasm bytes to left
* Fix visual glitch in function boundaries
* Import upgraded versions of the idc2rdb scripts in doc/
* 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
- Deprecate ah and add anal.plugin
- e anal.plugin=? list available plugins
- Add the command 'ar' to handle refs/xrefs
- Remove old CX and Cx stuff
- Remove afg (done by af)
* r_anal (& r_meta)
- Remove refs/xrefs stuff from r_meta
- Handle refs from r_anal
- Add r_anal_ref_{add, del}
* rabin2
- Add 'e anal.plugin' to the output of rabin2 -Ir
- CC now ask for size, like the rest of r_meta_add commands
- Project tracks meta, xrefs and sections information and actual offset
- Visual add comment patched to use new r_meta_add comment with size
- Documented C* in r_meta help.
* Stop parsing commands at '#' char (comment)
* strclean command strings before executing them (fixes some issues with spaces..)
* V: is now honoring cursor position in cursor mode
- Fix flickering while keeping pressed s or S (step, step over)
- Prompt "Press any key" after using ':'
* r_core
- Group refs under CODE & DATA in afl output
- Remove command CF (use af+ instead)
* support array types for function string serialization
* Fix undo seek when io->va is enabled
- Fix Vu and VU commands (must read after seek)
* Add patch from edu adding Start/End keys support in dietline
- Fix r_parse_x86_pseudo for att syntax
* 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
* Added C! command that calls r_meta_sync()
- put xref information inside function metaitems
- reduces cpu usage
- Fix some memory leaks
- Add object lifecycle for r_list_item_t
- Use RList instead of list.h
* Apply patch from edu fixing '+' key in visual (Thanks!)
* Fix segfault in osx printf ("%s", NULL) using r_str_get()
* 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
* In 'pd' display strings as text, not opcodes
* Added 'Vdu' command to undefine metadata and flags on cursor
* Better support for visual cursor
* Added f-@ command to undefine flags at given address
* Fix parse of C* commands
* Added C- and C[xXsSm..]- to unset metadata
* Disable cursor when quitting visual mode
- 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
* Initial support for visual cursor with invert cons in 'pd' bytes
- Some changes in '*' and '/' keys in visual modes (+-16)
- '+/-' in visual cursor works as in r1 (inc/dec cursor byte)
* Rename 'zf' into 'zh' for header, not function
- 'zf' stands now for function signatures (args, types, ret, ...)
* Added 'S' key in visual mode (step over)
* Safer 'dcc' and 'dcr' commands using step over if necessary
- Skip current instruction (do not lock on calls, rets..)
* Implement step over functionality
* 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
* Handle function boundaries in 'pd'
* Reset stack_ptr=0 when leaving a function body
* Fix 'asm.bytes=false' (display flags as newlines)
* Fix 's+' and 's-' (seek redo, seek undo)
- Bindied in visual mode as 'u' and 'U' keys
- Added 's*' command to list seeking history
* Add dummy file.md5 eval var
- TODO: must be done by rabin2 and checked by project file
* 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
* Fix io.ffio warnings
* Fix '.' key in visual mode (sr pc)
* Various 64bit related fixes
* Various fixes in r2-swig
- Needs valaswig from hg (update)
- r_config and
- Some random changes.. with no success
- Grepping console buffer is not working
* Cleanup the 'ds' and 'dp' commands
- Implement 'dpa' to attach
- Allow to list childrens of pid
- Also list all attachable pids
* Fix segfault by leaking.. needs some cleanup
* Fix r_debug_reg_list (NULL) issue
--HG--
rename : libr/cons/filter.c => libr/cons/grep.c
- Disassembly, flags, prompt are now colorized
- Depending on type of opcode
* Added 'sr' command to seek to register
- Simplify visual prompt to get 'pc' register
* More random code cleanup
* 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
- 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
- Reference code lines are displayed again
- Optimize the open_as method of RIo
- Do not use R_XXX_NAME() macros anymore. simplify!
- Add 'ah' command to select the handler
* Do not allow to seek on unreadable addresses
- Warns a lot but its better. More strict
* SEEK_END is now UT64_MAX. Fear
- 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
- typedef function pointers in r_search (rSearchCallback)
- hide R_API stuff as it should in many .h files
- typedef classes in rCore, rSearch
* Add perl, ruby, python examples for r_asm and r_bp
- Many other libraries are compiled by default
* Adapt r_asm vapi to the current C api (massemble returns rAsmCode)
- dynamically allocatable string buffer
* Rename seek->offset to avoid collisions
* Added cfg.debug config variable
* Fix the basic stuff for r.dbg.reg api integrated with core
* Failover into the plugin breakpoint implementation to support
non memory breakpoints like API ones or hardware ones
* Added initial non-working version of the gdbwrap debug plugin
- We need to design an IO plugin for gdbwrap too (or a way to
change the IO based on the debug plugin)
- 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()
* Implement write support to r_io plugin dbg_ptrace
* Fix libtcc lang plugin compilation problem
* Use r_core_write_at instead of r_io_seek+r_io_write
* Implement 'wa' command.
- Integrated with visual mode (bind to 'a' key)
- Added 'x' key in visual to write hexpair strings
* Fix signature of 'assemble' function in r_asm (const u8 *)
* 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)
* 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
- Directly ported from radare1 code
- Fixes a bug in r_cons
- Define 'noname' flagspace by default
* Fix a segfault in r_flag_spaces
* Change prop values order in radare2 -L
- We have to grep stuff when inserting it, not when flushing
* Fix 'pd' command (initialize base address
* Initial import of the foreach @@ syntax sugar
- Basic flag support, allows @@= for lists and @@.() for macros
* Add 'g' and 'G' keys in visual
* Fix issues in the macro engine and usage
- Proper identification of dupped commands
- Split macro name and arguments in internal structures
- Chop last ')' to make () and (,) macros work happily
* Fix build of r_sign and a segfault in _free() method
- 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
- Some minor hacks everywhere to glue
- 'dr' command runs '|reg' io-ptrace command (reg dbg stuff needs more work)
- '|reg' is a temporal command that prints x86-ptrace-linux registers
* Added debug visual print mode using && :)
- 's' key steps in debugger
* Added m and ' keys in visual (mark and goto mark) like in vim or r1 :)
- store/use seek addresses
* Make use of the cmd.prompt and cmd.vprompt magic
* Added debug handlers list with 'dh'
- dh ptrace called at init
- dp pid called at init too (hacky style)
* Added debug->wait method for the debug handlers
* Add 'fb' command to set base for flags
* Fix flag redefinition (f foo && f foo @ 33) now works
* Added s64 type (signed 64 bit integer)
* Fixed && and '"' special chars in commnad parsing
--HG--
rename : libr/debug/p/ptrace.c => libr/debug/p/dbg-ptrace.c
- 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