Fix a fuse bug

Create reply contains flags but those are not O_* passed in by request.
Those are FOPEN_* fuse-specific flags describing new file's mode (caching,
passthrough etc).
This commit is contained in:
Andrey Turkin
2024-10-27 20:45:25 +03:00
parent d8950b52c2
commit 469db981a4
+2 -2
View File
@@ -374,7 +374,7 @@ impl<'f, D: Disk> Filesystem for Fuse<'f, D> {
name: &OsStr,
mode: u32,
_umask: u32,
flags: i32,
_flags: i32,
reply: ReplyCreate,
) {
let parent_ptr = TreePtr::<Node>::new(parent_id as u32);
@@ -390,7 +390,7 @@ impl<'f, D: Disk> Filesystem for Fuse<'f, D> {
}) {
Ok(node) => {
// println!("Create {:?}:{:o}:{:o}", node.1.name(), node.1.mode, mode);
reply.created(&TTL, &node_attr(&node), 0, 0, flags as u32);
reply.created(&TTL, &node_attr(&node), 0, 0, 0);
}
Err(error) => {
reply.error(error.errno);