├── .github └── workflows │ └── rust.yml ├── .gitignore ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── Cargo.toml ├── LICENSE ├── README.md ├── examples ├── copy_in_out.rs ├── hello_world.rs ├── utf8.rs └── zbox.rs ├── libsodium.gpg.key ├── rustfmt.toml ├── src ├── base │ ├── crypto.rs │ ├── lru.rs │ ├── lz4.rs │ ├── mod.rs │ ├── refcnt.rs │ ├── time.rs │ ├── utils.rs │ ├── version.rs │ └── vio.rs ├── content │ ├── chunk.rs │ ├── chunker.rs │ ├── content.rs │ ├── entry.rs │ ├── merkle_tree.rs │ ├── mod.rs │ ├── segment.rs │ ├── span.rs │ └── store.rs ├── error.rs ├── file.rs ├── fs │ ├── fnode.rs │ ├── fs.rs │ └── mod.rs ├── lib.rs ├── repo.rs ├── trans │ ├── cow.rs │ ├── eid.rs │ ├── mod.rs │ ├── trans.rs │ ├── txid.rs │ ├── txmgr.rs │ └── wal.rs ├── version.rs └── volume │ ├── address.rs │ ├── allocator.rs │ ├── armor.rs │ ├── mod.rs │ ├── storage │ ├── faulty │ │ ├── faulty.rs │ │ └── mod.rs │ ├── faulty_ctl.rs │ ├── file │ │ ├── file.rs │ │ ├── file_armor.rs │ │ ├── mod.rs │ │ └── sector.rs │ ├── index_mgr.rs │ ├── mem │ │ ├── mem.rs │ │ └── mod.rs │ ├── mod.rs │ ├── redis │ │ ├── mod.rs │ │ └── redis.rs │ ├── sqlite │ │ ├── mod.rs │ │ └── sqlite.rs │ ├── storage.rs │ └── zbox │ │ ├── http_client.rs │ │ ├── index_accessor.rs │ │ ├── local_cache │ │ ├── browser.rs │ │ ├── file.rs │ │ ├── local_cache.rs │ │ ├── mem.rs │ │ └── mod.rs │ │ ├── mod.rs │ │ ├── sector.rs │ │ ├── transport │ │ ├── faulty.rs │ │ ├── jni.rs │ │ ├── mod.rs │ │ ├── native.rs │ │ └── wasm.rs │ │ └── zbox.rs │ ├── super_block.rs │ └── volume.rs ├── tests ├── common │ ├── controller.rs │ ├── crypto.rs │ ├── fuzzer.rs │ └── mod.rs ├── dir.rs ├── file.rs ├── fuzz.rs ├── perf.rs └── repo.rs └── vendor └── lz4 ├── LICENSE ├── lz4.c ├── lz4.h ├── lz4frame.c ├── lz4frame.h ├── lz4frame_static.h ├── lz4hc.c ├── lz4hc.h ├── xxhash.c └── xxhash.h /.github/workflows/rust.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/.github/workflows/rust.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/.gitignore -------------------------------------------------------------------------------- /CODE_OF_CONDUCT.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/CODE_OF_CONDUCT.md -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/CONTRIBUTING.md -------------------------------------------------------------------------------- /Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/Cargo.toml -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/README.md -------------------------------------------------------------------------------- /examples/copy_in_out.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/examples/copy_in_out.rs -------------------------------------------------------------------------------- /examples/hello_world.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/examples/hello_world.rs -------------------------------------------------------------------------------- /examples/utf8.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/examples/utf8.rs -------------------------------------------------------------------------------- /examples/zbox.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/examples/zbox.rs -------------------------------------------------------------------------------- /libsodium.gpg.key: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/libsodium.gpg.key -------------------------------------------------------------------------------- /rustfmt.toml: -------------------------------------------------------------------------------- 1 | max_width = 80 2 | -------------------------------------------------------------------------------- /src/base/crypto.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/base/crypto.rs -------------------------------------------------------------------------------- /src/base/lru.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/base/lru.rs -------------------------------------------------------------------------------- /src/base/lz4.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/base/lz4.rs -------------------------------------------------------------------------------- /src/base/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/base/mod.rs -------------------------------------------------------------------------------- /src/base/refcnt.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/base/refcnt.rs -------------------------------------------------------------------------------- /src/base/time.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/base/time.rs -------------------------------------------------------------------------------- /src/base/utils.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/base/utils.rs -------------------------------------------------------------------------------- /src/base/version.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/base/version.rs -------------------------------------------------------------------------------- /src/base/vio.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/base/vio.rs -------------------------------------------------------------------------------- /src/content/chunk.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/content/chunk.rs -------------------------------------------------------------------------------- /src/content/chunker.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/content/chunker.rs -------------------------------------------------------------------------------- /src/content/content.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/content/content.rs -------------------------------------------------------------------------------- /src/content/entry.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/content/entry.rs -------------------------------------------------------------------------------- /src/content/merkle_tree.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/content/merkle_tree.rs -------------------------------------------------------------------------------- /src/content/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/content/mod.rs -------------------------------------------------------------------------------- /src/content/segment.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/content/segment.rs -------------------------------------------------------------------------------- /src/content/span.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/content/span.rs -------------------------------------------------------------------------------- /src/content/store.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/content/store.rs -------------------------------------------------------------------------------- /src/error.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/error.rs -------------------------------------------------------------------------------- /src/file.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/file.rs -------------------------------------------------------------------------------- /src/fs/fnode.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/fs/fnode.rs -------------------------------------------------------------------------------- /src/fs/fs.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/fs/fs.rs -------------------------------------------------------------------------------- /src/fs/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/fs/mod.rs -------------------------------------------------------------------------------- /src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/lib.rs -------------------------------------------------------------------------------- /src/repo.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/repo.rs -------------------------------------------------------------------------------- /src/trans/cow.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/trans/cow.rs -------------------------------------------------------------------------------- /src/trans/eid.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/trans/eid.rs -------------------------------------------------------------------------------- /src/trans/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/trans/mod.rs -------------------------------------------------------------------------------- /src/trans/trans.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/trans/trans.rs -------------------------------------------------------------------------------- /src/trans/txid.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/trans/txid.rs -------------------------------------------------------------------------------- /src/trans/txmgr.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/trans/txmgr.rs -------------------------------------------------------------------------------- /src/trans/wal.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/trans/wal.rs -------------------------------------------------------------------------------- /src/version.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/version.rs -------------------------------------------------------------------------------- /src/volume/address.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/volume/address.rs -------------------------------------------------------------------------------- /src/volume/allocator.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/volume/allocator.rs -------------------------------------------------------------------------------- /src/volume/armor.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/volume/armor.rs -------------------------------------------------------------------------------- /src/volume/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/volume/mod.rs -------------------------------------------------------------------------------- /src/volume/storage/faulty/faulty.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/volume/storage/faulty/faulty.rs -------------------------------------------------------------------------------- /src/volume/storage/faulty/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/volume/storage/faulty/mod.rs -------------------------------------------------------------------------------- /src/volume/storage/faulty_ctl.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/volume/storage/faulty_ctl.rs -------------------------------------------------------------------------------- /src/volume/storage/file/file.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/volume/storage/file/file.rs -------------------------------------------------------------------------------- /src/volume/storage/file/file_armor.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/volume/storage/file/file_armor.rs -------------------------------------------------------------------------------- /src/volume/storage/file/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/volume/storage/file/mod.rs -------------------------------------------------------------------------------- /src/volume/storage/file/sector.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/volume/storage/file/sector.rs -------------------------------------------------------------------------------- /src/volume/storage/index_mgr.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/volume/storage/index_mgr.rs -------------------------------------------------------------------------------- /src/volume/storage/mem/mem.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/volume/storage/mem/mem.rs -------------------------------------------------------------------------------- /src/volume/storage/mem/mod.rs: -------------------------------------------------------------------------------- 1 | #![allow(clippy::module_inception)] 2 | 3 | mod mem; 4 | 5 | pub use self::mem::MemStorage; 6 | -------------------------------------------------------------------------------- /src/volume/storage/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/volume/storage/mod.rs -------------------------------------------------------------------------------- /src/volume/storage/redis/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/volume/storage/redis/mod.rs -------------------------------------------------------------------------------- /src/volume/storage/redis/redis.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/volume/storage/redis/redis.rs -------------------------------------------------------------------------------- /src/volume/storage/sqlite/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/volume/storage/sqlite/mod.rs -------------------------------------------------------------------------------- /src/volume/storage/sqlite/sqlite.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/volume/storage/sqlite/sqlite.rs -------------------------------------------------------------------------------- /src/volume/storage/storage.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/volume/storage/storage.rs -------------------------------------------------------------------------------- /src/volume/storage/zbox/http_client.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/volume/storage/zbox/http_client.rs -------------------------------------------------------------------------------- /src/volume/storage/zbox/index_accessor.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/volume/storage/zbox/index_accessor.rs -------------------------------------------------------------------------------- /src/volume/storage/zbox/local_cache/browser.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/volume/storage/zbox/local_cache/browser.rs -------------------------------------------------------------------------------- /src/volume/storage/zbox/local_cache/file.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/volume/storage/zbox/local_cache/file.rs -------------------------------------------------------------------------------- /src/volume/storage/zbox/local_cache/local_cache.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/volume/storage/zbox/local_cache/local_cache.rs -------------------------------------------------------------------------------- /src/volume/storage/zbox/local_cache/mem.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/volume/storage/zbox/local_cache/mem.rs -------------------------------------------------------------------------------- /src/volume/storage/zbox/local_cache/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/volume/storage/zbox/local_cache/mod.rs -------------------------------------------------------------------------------- /src/volume/storage/zbox/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/volume/storage/zbox/mod.rs -------------------------------------------------------------------------------- /src/volume/storage/zbox/sector.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/volume/storage/zbox/sector.rs -------------------------------------------------------------------------------- /src/volume/storage/zbox/transport/faulty.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/volume/storage/zbox/transport/faulty.rs -------------------------------------------------------------------------------- /src/volume/storage/zbox/transport/jni.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/volume/storage/zbox/transport/jni.rs -------------------------------------------------------------------------------- /src/volume/storage/zbox/transport/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/volume/storage/zbox/transport/mod.rs -------------------------------------------------------------------------------- /src/volume/storage/zbox/transport/native.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/volume/storage/zbox/transport/native.rs -------------------------------------------------------------------------------- /src/volume/storage/zbox/transport/wasm.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/volume/storage/zbox/transport/wasm.rs -------------------------------------------------------------------------------- /src/volume/storage/zbox/zbox.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/volume/storage/zbox/zbox.rs -------------------------------------------------------------------------------- /src/volume/super_block.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/volume/super_block.rs -------------------------------------------------------------------------------- /src/volume/volume.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/src/volume/volume.rs -------------------------------------------------------------------------------- /tests/common/controller.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/tests/common/controller.rs -------------------------------------------------------------------------------- /tests/common/crypto.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/tests/common/crypto.rs -------------------------------------------------------------------------------- /tests/common/fuzzer.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/tests/common/fuzzer.rs -------------------------------------------------------------------------------- /tests/common/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/tests/common/mod.rs -------------------------------------------------------------------------------- /tests/dir.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/tests/dir.rs -------------------------------------------------------------------------------- /tests/file.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/tests/file.rs -------------------------------------------------------------------------------- /tests/fuzz.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/tests/fuzz.rs -------------------------------------------------------------------------------- /tests/perf.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/tests/perf.rs -------------------------------------------------------------------------------- /tests/repo.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/tests/repo.rs -------------------------------------------------------------------------------- /vendor/lz4/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/vendor/lz4/LICENSE -------------------------------------------------------------------------------- /vendor/lz4/lz4.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/vendor/lz4/lz4.c -------------------------------------------------------------------------------- /vendor/lz4/lz4.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/vendor/lz4/lz4.h -------------------------------------------------------------------------------- /vendor/lz4/lz4frame.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/vendor/lz4/lz4frame.c -------------------------------------------------------------------------------- /vendor/lz4/lz4frame.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/vendor/lz4/lz4frame.h -------------------------------------------------------------------------------- /vendor/lz4/lz4frame_static.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/vendor/lz4/lz4frame_static.h -------------------------------------------------------------------------------- /vendor/lz4/lz4hc.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/vendor/lz4/lz4hc.c -------------------------------------------------------------------------------- /vendor/lz4/lz4hc.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/vendor/lz4/lz4hc.h -------------------------------------------------------------------------------- /vendor/lz4/xxhash.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/vendor/lz4/xxhash.c -------------------------------------------------------------------------------- /vendor/lz4/xxhash.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zboxfs/zbox/HEAD/vendor/lz4/xxhash.h --------------------------------------------------------------------------------