async_fuser/ll/reply_async/
statfs.rs1use crate::ll::ResponseStruct;
4use crate::ll::ioslice_concat::IosliceConcat;
5use crate::ll::reply::Response;
6
7#[derive(Debug)]
9pub struct StatfsResponse {
10 blocks: u64,
11 bfree: u64,
12 bavail: u64,
13 files: u64,
14 ffree: u64,
15 bsize: u32,
16 namelen: u32,
17 frsize: u32,
18}
19
20impl StatfsResponse {
21 #[allow(clippy::too_many_arguments)]
23 pub fn new(
24 blocks: u64,
25 bfree: u64,
26 bavail: u64,
27 files: u64,
28 ffree: u64,
29 bsize: u32,
30 namelen: u32,
31 frsize: u32,
32 ) -> Self {
33 Self {
34 blocks,
35 bfree,
36 bavail,
37 files,
38 ffree,
39 bsize,
40 namelen,
41 frsize,
42 }
43 }
44}
45
46impl Response for StatfsResponse {
47 fn payload(&self) -> impl IosliceConcat {
48 ResponseStruct::new_statfs(
49 self.blocks,
50 self.bfree,
51 self.bavail,
52 self.files,
53 self.ffree,
54 self.bsize,
55 self.namelen,
56 self.frsize,
57 )
58 }
59}