radare2/libr/io
2018-04-09 10:57:58 +02:00
..
p Fix mem+fd leaks in io.gprobe reported by COV 2018-04-09 10:57:58 +02:00
cache.c invalidate most recent changes first 2018-04-08 18:20:57 +02:00
desc.c Implement io.cache.auto to cache all reads for slow io backends 2017-12-18 01:44:22 +01:00
fd.c fix returnvalue for getbase^ 2017-09-01 01:10:32 +00:00
io.c Few improvements to 8051 memory mapping (#9686) 2018-03-14 13:07:22 +01:00
iobuf.c More build fixes for android 2017-08-19 20:05:21 +02:00
ioutils.c Fix O(n) duplicated calculation of skyline in _section_reapply 2017-09-17 01:10:53 +02:00
Makefile Fix static build 2017-09-12 22:31:54 +02:00
map.c refactor for riobind 2018-02-03 19:22:56 +01:00
meson.build Meson: Add version info for shared libs (#9763) 2018-03-24 18:18:32 +01:00
p_cache.c fix pcache ptr-fuckup 2018-03-14 23:54:41 +01:00
plugin.c Add missing commas in oLj output (#9634) 2018-03-09 02:41:21 +01:00
README
section.c Add Vb[is] for imports/symbols 2018-01-24 10:47:33 +01: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
}