1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
extern crate fuse;
extern crate libc;
extern crate v1;
use v1::data::MESSAGE;
use fuse::{Filesystem, Request, ReplyEntry, ReplyAttr, ReplyDirectory, ReplyData};
use libc::ENOENT;
use std::ffi::OsStr;
struct MemFs;
impl Filesystem for MemFs {
fn lookup(&mut self, _req: &Request, _parent: u64, _name: &OsStr,
reply: ReplyEntry) {
reply.error(ENOENT);
}
fn getattr(&mut self, _req: &Request, _ino: u64, reply: ReplyAttr) {
reply.error(ENOENT);
}
fn read(&mut self, _req: &Request, _ino: u64, _fh: u64, _offset: u64,
_size: u32, reply: ReplyData) {
reply.error(ENOENT);
}
fn readdir (&mut self, _req: &Request, ino: u64, _fh: u64, offset: u64,
reply: ReplyDirectory) {
reply.error(ENOENT);
}
}
fn main() {
println!("{}", MESSAGE);
let mountpoint = std::env::args_os().nth(1).unwrap();
fuse::mount(MemFs, &mountpoint, &[]).unwrap();
}
|