package fuse import ( "time" ) type attr struct { Ino uint64 Size uint64 Blocks uint64 Atime uint64 Mtime uint64 Ctime uint64 Crtime_ uint64 // OS X only AtimeNsec uint32 MtimeNsec uint32 CtimeNsec uint32 CrtimeNsec uint32 // OS X only Mode uint32 Nlink uint32 Uid uint32 Gid uint32 Rdev uint32 Flags_ uint32 // OS X only; see chflags(2) } func (a *attr) SetCrtime(s uint64, ns uint32) { a.Crtime_, a.CrtimeNsec = s, ns } func (a *attr) SetFlags(f uint32) { a.Flags_ = f } type setattrIn struct { setattrInCommon // OS X only Bkuptime_ uint64 Chgtime_ uint64 Crtime uint64 BkuptimeNsec uint32 ChgtimeNsec uint32 CrtimeNsec uint32 Flags_ uint32 // see chflags(2) } func (in *setattrIn) BkupTime() time.Time { return time.Unix(int64(in.Bkuptime_), int64(in.BkuptimeNsec)) } func (in *setattrIn) Chgtime() time.Time { return time.Unix(int64(in.Chgtime_), int64(in.ChgtimeNsec)) } func (in *setattrIn) Flags() uint32 { return in.Flags_ }