radare2/libr/io
2016-05-24 22:22:15 +02:00
..
p Infer fixes Round 2 (#4993) 2016-05-24 22:22:15 +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 Fix #3286 - Use stdbool.h 2015-09-14 02:08:31 +02:00
cache.c Fix #4295 and #4155 2016-04-04 23:09:58 +02:00
desc.c Infer fixes Round 2 (#4993) 2016-05-24 22:22:15 +02:00
io.c Infer fixes Round 2 (#4993) 2016-05-24 22:22:15 +02:00
Jamroot Introduce debug plugin for QNX pdebug interface 2016-04-22 11:45:51 +02:00
Makefile Introduce debug plugin for QNX pdebug interface 2016-04-22 11:45:51 +02:00
map.c Infer fixes Round 2 (#4993) 2016-05-24 22:22:15 +02:00
plugin.c Fix #3286 - Use stdbool.h 2015-09-14 02:08:31 +02:00
README Add initial XCore capstone disassembler and code analysis plugins 2014-05-27 23:08:59 +02:00
section.c Infer fixes Round 2 (#4993) 2016-05-24 22:22:15 +02:00
undo.c Infer fixes Round 2 (#4993) 2016-05-24 22:22:15 +02:00
undo.h * Change the name of some types 2009-07-08 13:49:55 +02:00
vio.c Infer fixes Round 2 (#4993) 2016-05-24 22:22:15 +02: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
}