Commit Graph

174 Commits

Author SHA1 Message Date
pancake
78dbab76d6 * Added basic working example in swig-python for r_util
* Add _write and _puts methods for r_socket api
  - fgets -> gets
  - fix r_socket_printf
* More random fixes
* typedef all structures in r_util
2009-12-22 13:27:43 +01:00
pancake/fluendo
a387e654e1 * Initial import of the swig test case
* Fix r_util for r_str stuff
2009-12-16 20:14:06 +01:00
pancake/fluendo
1ac990a330 * Fix build 2009-11-23 17:49:40 +01:00
pancake
deb263a5fb * Apply whats's patch fixing r_search for stripstr
- 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
2009-10-12 17:41:52 +02:00
pancake
8579a5b41f * Release version to 0.3
- 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
2009-09-25 04:04:51 +02:00
pancake
648189f21f * Drop PFX in debug plugin names
* 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
2009-09-24 19:46:32 +02:00
pancake
9442317413 * Major refactoring patch
- Remove plugin prefixes
    - It was unnecessary complicated
  - Remove unused code
  - Some RAPIfication
  - Rename _set( methods into _use(
  - Simplify some string processing
  - r_parse is working again
  - Sync all those api changes in r_core
  - External static plugin lists moved to .c
  - Fix some cast-related segfaults in core
* Review the r_search API
  - RAPIfication
  - Allow to pass NULL as binmask
  - Added TODO with some more ideas
2009-09-24 12:29:05 +02:00
pancake/fluendo
dd2501b188 * Fixed ralist and rarray interfaces and macros
- No clean free or checks done yet, but they are
    now both working
* Use classes with no ref/unref to make vala code nicer
* Fix build of some test programs (fixed -L)
* Remove dummy Foo from r_util (moved to t/list.vapi)
2009-09-22 19:23:49 +02:00
pancake
35c078584c * Fix build of r_debug
* 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
2009-09-22 13:27:33 +02:00
pancake
5d5fec5084 * Single valadoc by default
* Added SEGment register types (r_reg+vapi)
* depgraph.pl is now generating .gml output
2009-09-21 15:39:10 +02:00
pancake
42688da6ec * Rename some handle_set into _use() new syntax
* 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
2009-09-20 02:16:14 +02:00
pancake
cfbb6574f7 * Initial implementation of the r_lang VAPI
- Added test program in Vala
* Added r_lang_define and r_lang_undef
  - They are global on the module
  - Each plugin should use lang_t
  - *user must be deprecated
2009-09-20 01:03:57 +02:00
pancake
85dfbe5255 * Added r_reg pkgconfig file
* Some fixes in the r_reg VAPI
  - Added vala test program
* r_debug is now broken because the new r_reg
* Add r_free_internal to reduce leaks in r_reg
2009-09-20 00:28:06 +02:00
pancake
b881d4b080 * Implementate r_reg.vapi (register vala api)
* 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
2009-09-19 23:41:25 +02:00
pancake
dfe94a984e * Initial working version of r_reg
- 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
2009-09-19 21:54:22 +02:00
pancake
a371f53a0f * Fix build of r_debug/r_core (little api changes)
* Initial import of the new design or r_reg
  - Needs to be implemented at all, but the big
    picture is here :)
2009-09-18 20:11:42 +02:00
pancake
58c557f316 * Apply 'whats' fix for r_file_slurp_hexpairs()
- Fixes segfault
  - Added test program
* RAPIfy the r_util/file.c
2009-09-17 14:02:44 +02:00
pancake
b37ec4f0b1 * Added 'mk/stat' tools
- 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
2009-09-17 11:48:36 +02:00
pancake
df967c868b * Added doc/oo: describes the object dis-orientation of libr
- Plugins should be singletons across object instances
* Added hard/soft initializer for r_crypto
  - Needed for the as_new()
  - Added stupid vala example for r_crypto vapi
* Implement r_debug->mmu methods
2009-09-15 13:24:28 +02:00
pancake
6d58b7bb7b * Added initial vapi file for r_crypto
* Fix r_util List interface for list.h
  - Test program is now working. Thanks juergbi!
  - Needs vala>=20091115
2009-09-15 02:18:19 +02:00
pancake
e66cdfbcef * Add missing r_crypto.h 2009-09-15 01:51:28 +02:00
pancake
209fb08a53 * Initial implementation of the r_crypto API
- Thanks skurz0 for the design tips
  - Needs to implement some plugins
  - Not yet working/tested

--HG--
rename : libr/crypto/p/aes.c => libr/crypto/p/crypto_aes_algo.c
rename : libr/crypto/p/aes.h => libr/crypto/p/crypto_aes_algo.h
2009-09-15 01:45:58 +02:00
pancake
1aadbea576 * Some more random refactoring on r_debug and r_reg
* Added support for bit level hash algorithm selection
  - Integrate it with rahash2
  - Needs some cleanup of spagheti mess
  - All hash algorithms are now supported in a shot :)
  - R_APIfy r_hash
2009-09-15 00:06:37 +02:00
pancake
91ad40d663 * Major unfinished refactoring for r_debug and r_bp
- radare2 debugger is now broken
  - r_reg has grown a bit more
  - Better separation of debugger elements
* r_bp now has r_bp_add_hw and r_bp_add_sw() calls
  - Added minimal support for breakpoint handlers
  - Import th0rpe's watchpoint expression parser engine
* iob moved from r_debug to r_bp
* Arch types has been moved into r_asm
  - Soft compile time dependency
* Update pkg-config .pc files
2009-09-14 00:37:28 +02:00
pancake
669ce0a815 * Initial r_io_bind'ization of r_bin .. not yet working
- Meld bind.c into io.c
* Some review in many r_debug code
* Added vapi for r_debug
2009-09-10 20:51:34 +00:00
pancake
f1c9c1e778 * Some malloc checks in _new() class constructors
- 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
2009-09-09 00:35:00 +00:00
pancake
fdf164e229 * Add 'r_io_undo'
* Added deinitializators for r_io_cache
2009-09-08 18:16:52 +00:00
pancake
780e424cbe * Added R_IO_EXEC, Removed R_IO_RDWR.
- Promote the use of binary ORs
* Make r_io support cached IO
* Enforce rwx/seek by section information
  - Optional by configuring io->enforce*
  - Add cache.c
* section->comment => name
* Added resize callback on io pluings (not yet implemented)
2009-09-08 02:14:19 +00:00
pancake
e5c83d6d26 * Do not pass CFLAGS when linking asm/t/fastcall
* 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
2009-09-08 01:08:46 +00:00
pancake
16cf12c8d6 * Fixtures for the r_io API (breaking ABI and so :)
- Standalone test program is now able to debug a process and read mapped memory
  - Fixes in the r_io and ptrace plugin sides
* Added 'make vdoc' target
2009-09-07 20:01:34 +00:00
pancake
1dd4042505 * Lot of work on refactoring r_io
- Added desc.c to handle file descriptors (avoid dupped, register handlers, ..)
  - Fix some bugs and optimize io paths
  - Added resolution methods
  - Maps are incomplete but better interfaced. Needs more work
  - Added io/t/map.c test program (not yet working)
* Some fixups in many vapi files
  - Fix broken ones (syntax parsing error)
  - Complete them a bit more
* Initial working version of a demo of list.h vala interface
  - Implemented as a Generic class
  - Designed as an Iterator, so 'foreach' can be used to iterate
  - Added example program iterating from vala and generating a list in C
2009-09-05 23:58:02 +00:00
pancake
a9d47cbecb * Initial working version of the r_iter for Vala
- pointers is the answer
2009-09-03 11:17:00 +00:00
pancake
2ca850007f * Major refactoring of r_io (api has changed)
- 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
2009-09-02 00:10:51 +00:00
pancake
bca428f994 * Some ideas for the code analysis module
* Fix r_iter_last()
  - Some more work on the Vala integration
* Grep for README and TODO for hg-miss
2009-08-24 12:03:37 +00:00
pancake
624f5c68ea * Return "" instead of NULL when possible in core input
- myfgets returns length(str)+1
  - r_line fix for empty lines interpreted as EOF
* RAPIfication in io.c
* Fix the way to build the tests programs in io/t/{cat|read4}
2009-08-22 05:29:58 +00:00
pancake
1ee0247b94 * Fix build of core
* 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
2009-08-22 04:54:41 +00:00
pancake
6c28274aa0 * Implement static plugins for r_io
- Prefix all plugins with 'io_' (like in the rest of libs)
  - Statify io_dbg and io_ptrace IO plugins
* Added _free methods for r_io and r_debug. Oops
* Initial dummy version of r_debug.vapi
* More stuff in the debug/t/main.c (not yet working)
* Better hg-miss missing file detection checks

--HG--
rename : libr/io/p/dbg.c => libr/io/p/io_dbg.c
rename : libr/io/p/ewf.c => libr/io/p/io_ewf.c
rename : libr/io/p/malloc.c => libr/io/p/io_malloc.c
rename : libr/io/p/ptrace.c => libr/io/p/io_ptrace.c
rename : libr/io/p/shm.c => libr/io/p/io_shm.c
2009-08-22 03:11:33 +00:00
pancake
a1f45dbf8a * Add support for static plugins to r_debug
- 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
2009-08-22 01:54:24 +00:00
pancake
ab1c417abb * Some more work for the r_iter API
- 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
2009-08-21 19:09:48 +00:00
pancake
c3922f6131 * Fix Vala r_bin VAPI and example
* Added iter.h with simplified r_iter in cpp macros
* Some fixes and enhacements in r_iter
2009-08-20 12:20:14 +00:00
pancake/fluendo
57cb3628fa * Added basic iterator helper functions (help vala integration?) 2009-08-19 18:38:35 +02:00
pancake
66b702069e * Initial working implementation of r_parse_assemble()
- Added test program as a demo
2009-08-14 02:19:54 +00:00
pancake
65da25d4c0 * Implement STATIC PLUGIN support for r_parse
- 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
2009-08-14 01:44:12 +00:00
pancake
bc1b1b976e * Initial implementation of r_asm_fastcall()
- VAPI sync
  - Used to get register N to call fastcalls (syscalls f.ex)
* Code analysis marked as 8-bit compliant
2009-08-14 00:37:18 +00:00
pancake
ce97b40202 * Add r_socket_to_string() function in r_socket API
- R_APIzation of r_socket
* Added r_hex_bin2strdup()
  - Bind it into the VAPI
2009-07-24 13:38:53 +00:00
pancake/fluendo
7e3c696785 * Added r_db_add_unique method to the r_db api
- Reflect the change in the vapi file
* Added offsetof() macro in r_util
2009-07-22 17:30:21 +02:00
pancake
e4f749b1b9 * Initial import of r_th. The simplified and portable threading library 2009-07-21 11:13:24 +00:00
pancake/fluendo
57415c2107 * Some code cleanup and add some more checks on r_bin (-15LOC)
* Added new type R_TRUFAE
2009-07-16 14:17:32 +02:00
pancake/fluendo
564e11975a * Fix build and linkage of r_vm
- Added dummy test program for r_vm
2009-07-16 12:38:49 +02:00
pancake
1c3a319c53 * Added 'pkgcfg' directory with autogenerated .pc files
- 'make pkgcfg' does that automagically :)
* Implement r_mem_mem function in r_util
2009-07-16 00:30:20 +00:00