rizin/librz/io
Riccardo Schirone a689f0a86e librz: refactor a bit how plugins are built
Rely on RZ_ARRAY_SIZE to add librz plugins instead of NULL terminators.
2022-07-20 22:04:02 +02:00
..
p Fix compilation on Termux and Haiku (#2671) 2022-06-07 23:44:41 +02:00
io.c Add RzBaseFindOpt for custom thread status callback (#2768) 2022-07-06 11:34:00 +02:00
io_cache.c Convert 'wc' commands to rzshell (#2297) 2022-02-10 15:48:57 +01:00
io_desc.c Implement new rz_buf_fwd_scan() API (#2530) 2022-04-17 15:08:08 +02:00
io_fd.c Implement new rz_buf_fwd_scan() API (#2530) 2022-04-17 15:08:08 +02:00
io_map.c Implement getting a backtrace from a Windows Kernel Dump for x64 (#2387) 2022-03-15 10:45:02 +01:00
io_memory.c SPDX Copyright text for all files based on history 2021-03-05 19:39:15 +08:00
io_memory.h Add some SPDX headers (#1469) 2021-08-17 18:27:03 +02:00
io_plugin.c librz: refactor a bit how plugins are built 2022-07-20 22:04:02 +02:00
io_private.h Add some SPDX headers (#1469) 2021-08-17 18:27:03 +02:00
ioutils.c Format according to clang-format-13 2021-11-25 15:44:28 +08:00
meson.build librz: refactor a bit how plugins are built 2022-07-20 22:04:02 +02:00
p_cache.c Format according to clang-format-13 2021-11-25 15:44:28 +08:00
README
serialize_io.c SPDX Copyright text for all files based on history 2021-03-05 19:39:15 +08: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
}