"os"
"path"
"strings"
- "syscall"
"go.cypherpunks.ru/recfile"
"golang.org/x/crypto/blake2b"
+ "golang.org/x/sys/unix"
)
func recfileWrite(fdDep *os.File, fields ...recfile.Field) error {
}
func fileCtime(fd *os.File) (string, error) {
- fi, err := fd.Stat()
- if err != nil {
+ var stat unix.Stat_t
+ if err := unix.Fstat(int(fd.Fd()), &stat); err != nil {
return "", err
}
- stat := fi.Sys().(*syscall.Stat_t)
- sec, nsec := stat.Ctimespec.Unix()
+ sec, nsec := stat.Ctim.Unix()
return fmt.Sprintf("%d.%d", sec, nsec), nil
}