Crates.io | fuse_mt |
lib.rs | fuse_mt |
version | 0.6.1 |
source | src |
created_at | 2017-01-06 22:22:34.294694 |
updated_at | 2023-09-19 20:12:32.435761 |
description | A higher-level FUSE filesystem library with multi-threading and inode->path translation. |
homepage | |
repository | https://github.com/wfraser/fuse-mt |
max_upload_size | |
id | 7959 |
size | 80,853 |
This code is a wrapper on top of the Rust FUSE crate with the following additions:
The fuser
crate provides a minimal, low-level access to the FUSE kernel API, whereas this crate is more high-level, like the FUSE C API.
It includes a sample filesystem that uses the crate to pass all system calls through to another filesystem at any arbitrary path.
This is a work-in-progress. Bug reports, pull requests, and other feedback are welcome!
Some random notes on the implementation:
FilesystemMT
, and instead of the FUSE crate's convention of having methods return void and including a "reply" parameter, the methods return their values. This feels more idiomatic to me. They also take &Path
arguments instead of inode numbers.