diff --git a/file_system.go b/file_system.go index 60840ad..56ccac2 100644 --- a/file_system.go +++ b/file_system.go @@ -433,8 +433,10 @@ type SetInodeAttributesRequest struct { Inode InodeID // The attributes to modify, or nil for attributes that don't need a change. - Size *uint64 - Mode *os.FileMode + Size *uint64 + Mode *os.FileMode + Atime *time.Time + Mtime *time.Time } type SetInodeAttributesResponse struct { diff --git a/server.go b/server.go index dddfc74..28ebf3e 100644 --- a/server.go +++ b/server.go @@ -186,6 +186,14 @@ func (s *server) handleFuseRequest(fuseReq bazilfuse.Request) { req.Mode = &typed.Mode } + if typed.Valid&bazilfuse.SetattrAtime != 0 { + req.Atime = &typed.Atime + } + + if typed.Valid&bazilfuse.SetattrMtime != 0 { + req.Mtime = &typed.Mtime + } + // Call the file system. resp, err := s.fs.SetInodeAttributes(ctx, req) if err != nil {