radare2/libr/io
2018-02-09 21:37:47 +01:00
..
p fix ood whitespace (#9302) (#9353) 2018-02-09 21:37:47 +01:00
cache.c comment out some wip code, fix scoping for undo 2018-01-09 23:22:45 -08: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 refactor for riobind 2018-02-03 19:22:56 +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 Add io.winedbg to meson build 2017-09-27 09:35:09 +08:00
p_cache.c Use RInterval in io.cache and io.pcache, renaming and code cleanup 2018-01-10 02:35:11 +01:00
plugin.c More cleanup and ritvization 2018-01-10 07:43:54 +01:00
README
section.c Add Vb[is] for imports/symbols 2018-01-24 10:47:33 +01:00
undo.c Fix radiff2 -B patch 2018-01-10 10:18:31 +01: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
}