return uint32(stat.fdflags), errnoErr(errno)
}
+func fd_fdstat_get_type(fd int) (uint8, error) {
+ var stat fdstat
+ errno := fd_fdstat_get(int32(fd), unsafe.Pointer(&stat))
+ return stat.filetype, errnoErr(errno)
+}
+
type preopentype = uint8
const (
if errno == EBADF {
break
}
+ if errno == ENOTDIR || prestat.typ != preopentypeDir {
+ continue
+ }
if errno != 0 {
panic("fd_prestat: " + errno.Error())
}
- if prestat.typ != preopentypeDir {
- continue
- }
if int(prestat.dir.prNameLen) > len(dirNameBuf) {
dirNameBuf = make([]byte, prestat.dir.prNameLen)
}