func (c *rawBridge) GetAttr(input *fuse.GetAttrIn, out *fuse.AttrOut) (code fuse.Status) { node := c.toInode(input.NodeId) var f File if input.Flags()&fuse.FUSE_GETATTR_FH != 0 { if opened := node.mount.getOpenedFile(input.Fh()); opened != nil { f = opened.WithFlags.File } } dest := (*fuse.Attr)(&out.Attr) code = node.fsInode.GetAttr(dest, f, &input.Context) if !code.Ok() { return code } if out.Nlink == 0 { // With Nlink == 0, newer kernels will refuse link // operations. out.Nlink = 1 } node.mount.fillAttr(out, input.NodeId) return fuse.OK }