radare2/libr/io
2018-07-17 20:26:29 +02:00
..
p Fixed some covs (#10621) 2018-07-05 11:48:56 +02:00
cache.c Fix uaf in io.cache 2018-07-17 20:26:29 +02:00
desc.c Create map when reusing descriptors 2018-07-08 02:11:01 +02:00
fd.c fix returnvalue for getbase^ 2017-09-01 01:10:32 +00:00
io.c Implement named breakpoints with support for expressions 2018-06-19 12:27:57 +02:00
iobuf.c More build fixes for android 2017-08-19 20:05:21 +02:00
ioutils.c Make REUSE_NULL_MAPS a compile time option 2018-07-08 02:11:01 +02:00
Makefile Fix static build 2017-09-12 22:31:54 +02:00
map.c Fix #10444 - aav, /v enforces the map information, considering null:// (#10508) 2018-07-09 16:32:34 +02:00
meson.build meson improvements (#10617) 2018-07-09 16:58:38 +02:00
p_cache.c Kill the R_ITV defines (-8LOC) 2018-06-15 01:20:39 +02:00
plugin.c implement pure io-plugin rw in R_API 2018-05-31 23:53:54 +00:00
README
section.c Reuse null:// memmaps from rio.section from rcorebin for 'op' 2018-07-08 02:11:01 +02:00
undo.c Improve r2k-linux \? commands and revert io.undo patch 2018-04-03 02:02:48 +02:00
undo.h Use void in prototypes (#7974) 2017-07-20 14:50:13 +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
}