diff options
| author | Alejandro Soto <alejandro@34project.org> | 2021-12-23 18:57:18 -0600 |
|---|---|---|
| committer | Alejandro Soto <alejandro@34project.org> | 2021-12-23 19:26:39 -0600 |
| commit | fc6f4052648a77a66f6bd50ffd1647992cb68b10 (patch) | |
| tree | ee735850ee63a94c355f920aa168ea1969cca96a /src/client.rs | |
Initial commit
I started this project on February 2021, but postponed further
development until now. The only modification introduced since then is
try_trait_v2 (try_trait no longer exists).
Diffstat (limited to 'src/client.rs')
| -rw-r--r-- | src/client.rs | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/src/client.rs b/src/client.rs new file mode 100644 index 0000000..9f036c3 --- /dev/null +++ b/src/client.rs @@ -0,0 +1,52 @@ +//! FUSE client. +//! +//! Usually, a kernel module or other OS component takes the role of the FUSE client. This module +//! is a client-wise counterpart to the rest of `blown-fuse` API. So far, this only serves the +//! purpose of having agnostic tests, but wrappers might be written in the future with it. + +/*use crate::{proto, FuseResult}; + +#[cfg(feature = "server")] +use crate::session; + +struct Client {} + +struct RequestContext<'a> { + client: &'a, + uid: Uid, + gid: Gid, + pid: Pid, +} + +impl Client { + pub fn context(&self, uid: Uid, gid: Gid, pid: Pid) -> RequestContext<'_> { + RequestContext { + client: &self, + uid, + gid, + pid, + } + } +} + +impl RequestContext<'_> { + pub async fn lookup(&self) -> FuseResult<> { + self.tail() + } +} + +struct Start {} + +impl Start { + pub async fn start(self) -> FuseResult<Session> { + + } +} + +#[cfg(feature = "server")] +pub fn channel() -> std::io::Result<(session::Start, self::Start)> { + let client_start = ; + let server_start = ; + + (client_stasrt, server_start) +}*/ |
