radare2/libr/io
NighterMan 16548bddee Do not allocate more than one RIODesc for io_gdb
This fixes an issue where we end up with multiple connections to the gdb stub
which only supports one connection, ending up with one connection for debug
which works and another connection for IO which doesnt.
2015-09-08 23:27:43 +02:00
..
p Do not allocate more than one RIODesc for io_gdb 2015-09-08 23:27:43 +02:00
t rename r_io_open -> r_io_open_nomap and add a new r_io_open that creates a map at 0x0 2014-09-06 23:08:16 +02:00
buffer.c New io.buffer cache system and refactorized RHashTable 2013-01-12 04:29:45 +01:00
cache.c #3052 all printf member functions changed to cb_printf 2015-08-09 03:25:05 +02:00
desc.c #3052 all printf member functions changed to cb_printf 2015-08-09 03:25:05 +02:00
io.c Add DebugPlugin->keepio to fix ffff regression in debugger 2015-08-24 16:44:09 +02:00
Jamroot Remove io/haret plugins (moved to r2e) 2015-01-27 18:35:48 +01:00
Makefile Honor zip configure linkage 2015-02-23 01:07:05 +01:00
map.c #3052 all printf member functions changed to cb_printf 2015-08-09 03:25:05 +02:00
plugin.c #3052 all printf member functions changed to cb_printf 2015-08-09 03:25:05 +02:00
README Add initial XCore capstone disassembler and code analysis plugins 2014-05-27 23:08:59 +02:00
section.c io/section: r_io_section_offset_to_vaddr get section with mget, not vget 2015-09-07 13:40:49 +02:00
undo.c #3052 all printf member functions changed to cb_printf 2015-08-09 03:25:05 +02:00
undo.h * Change the name of some types 2009-07-08 13:49:55 +02:00
vio.c fix lots of spelling 2014-12-07 17:00:59 +01:00

RIO design
==========

rio api allows to seamlessly access to underlying IO backends
and define rules on top of it to act as an mmu.

What do io.va means?
--------------------
- obey sections

- Plugins 

Actions
-------
 - open
 - read
 - seek
 - write
 - close

Layers
------
 - cache    caches write ops and modifies reads
 - map      allows to map a certain file at a given offset
 - sections like maps, but provide more information for virtual addressing

Features
--------
 - undo
 - buffer
 - desc

fn read(io: IO) {
	ut64 offset;
	if io.offset
}