* fixed some bugs in rcc_pushstr in egg_lang.c
* fix bugs when strings within ',' and strating with non-zero char
* fix some error fixes
* fix the segment fault when calling functions with arguments
* add support for directory in include
* make some little changes
* add support for include and alias
* add some debug eprintf
* fix wrong label bugs in "while" syntax and rename some label
* fix odd syntax in "while" and "if"
* rename the labels
* add support for if\-else
* make some little changes for pretty print
* take a snapshot before writing confusing mathop
* finish mathop
* delete some unnecessary code in if-else frame to bypass test
* reindent all the thing
Identify Haiku binaries as 'beos' with noodle()
Fix CCa for non numeric offsets
Use sdb's r_str_hash() instead of old one (much less collisions)
Added ?h command to hash strings
CCa now appends instead of replacing comments
Do not mark as static if bin links to libs
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
- 'afl' is now just listing functions
- Use 'afl*' to get also 'loc.' functions (BBs)
- Fix length in cb_hit for search
- Fix infinite build in libr/egg
- Fix 'afr' command to rename function
- Implement 8bit mov, (out,in)sb in x86.nz
- Fix ragg2 -d for one byte writes
- Fix vapi
- 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..)
- 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]
- 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)
- 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
- experimental change to save memory..
* Fix warning in R_MEM_ALIGN() macro
* Fix r_db vapi and add RPair vapi
* Add new r_egg vapi and python bindings
- Add linux x86-32,64-arm shellcodes
- Requires valabind update
* Use R_MEM_ALIGN() in r_egg_run() and rasc2
- Fix execution of shellcode eggs
* r_egg plugins now support multiple architectures and operating systems
* ragg2 now works better
- Show bitsize in ragg2 -L
- Added a sample plugin for x86-64 osx shellcode
- command can be configured, suid can be enabled
* Minor fix in r_buf api
--HG--
rename : man/rasc2.1 => binr/rasc2/rasc2.1
* Initial working version of shellcodes inside r_egg
$ ragg2 -i x86.osx.binsh -b 64 -k osx -f mach064 -o a.out
ragg2 -L : list all plugins
ragg2 -i <shellcode-plugin> : select shellcode
ragg2 -r : show raw bytes
ragg2 -x : execute -- fails :(
* Use r_lib in r_egg
- User defined shellcode plugins can now be loaded on runtime
* Fix append_bytes in r_egg api
* Implement r_egg option_{get|set}
* Use working shellcode for x86.osx.binsh example (64bit)
* Update pkgconfig templates
* Add -D flag to rasm2 (show hex and asm)
--HG--
rename : libr/egg/p/x86_osx_binsh.c => libr/egg/p/egg_x86_osx_binsh.c
* Some more fixes for r_egg
- Use more tests cases
- Warn when stackframe doesnt fits
* Make t.sh unit test tool nicer
- Accept option flags to show asm, disasm, ..
* Add R2_PREFIX and R2_LIBDIR into r_util.vapi
- add 'timeout' directive
- directives can now be passed in arguments
- support more than 3 args for launching
- show default config file in help
* Added test suite for r_egg
- Fix nested conditional and loops
- Some situations can result in broken code
- Code needs a huge cleanup
* Varioues fixes for x86.nz plugin to make r_egg happy
* Install python plugins into dist-packages only
- site-packages is not the right place
* Add R2_LIBDIR and R2_PREFIX constants
* Honor LIBDIR in sdbpath for r_syscall
* Fix rabin2 -h for -C
* 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
* Add -O flag to ragg2 as an alias for -o a.out or -o <file> (without extension)
* Add rabin2 -M (get main) for Java Class files
* Add emit_trace (code tracer) for r_egg. useful to debug
- ragg2 -a trace hello.r
- Add emit->jmp() function pointer and emit->retvar
- many fixes in function calls and definitions
- Added support for 'break;' 'break();' and 'goto();'
- Added .ret variable as an alias for eax, rax or r0
- Show debug information in sdb format
- Fix null pointer segfault
- Still work-in-progress for proper debug info
* Some work on r_egg
- Fix windows and osx default syscall tables
* Export version number in vapi R2_VERSION
* Hide ccache error if not found in sys/install
* 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
- hello.r now is broken because of this use
- Ignore prefixed '$' in numeric values for r_egg
* Apply @capi_x's patch fixing a bug in 'wb' and rsc/msdn
- Added support for 'add|sub [reg+delta],n' opcodes in x86.nz
* Add emit_init() function pointer to fix entrypoint issues
- ebp has no valid value defined on entrypoints
* Use trim to avoid noisy chars in symbol names for egg/lang
* Properly handle osx/w32 os strings in r_egg
* Make string construction works in r_egg
* Initial work on while() constructs
- ATM only support for linux and osx
- Do not show asm when -f is passed
- Added 3 test programs for osx/linux in ragg2
* Add support for 'lea' opcode in x86.nz
- Support more 'mov [off], reg' opcodes
- Lot of new test cases in test.nz
* Fix some segfaults and parsing bugs in egg/lang
--HG--
rename : binr/ragg2/exithello.r => binr/ragg2/t/exithello.r