38 lines
865 B
Go
38 lines
865 B
Go
// Copyright 2023 The Go Authors. All rights reserved.
|
|
// Use of this source code is governed by a BSD-style
|
|
// license that can be found in the LICENSE file.
|
|
|
|
//go:build wasip1
|
|
|
|
package unix
|
|
|
|
import "github.com/goplus/llgo/c/syscall"
|
|
|
|
/* TODO(xsw):
|
|
import (
|
|
"syscall"
|
|
_ "unsafe" // for go:linkname
|
|
)
|
|
|
|
func IsNonblock(fd int) (nonblocking bool, err error) {
|
|
flags, e1 := fd_fdstat_get_flags(fd)
|
|
if e1 != nil {
|
|
return false, e1
|
|
}
|
|
return flags&syscall.FDFLAG_NONBLOCK != 0, nil
|
|
}
|
|
*/
|
|
|
|
func HasNonblockFlag(flag int) bool {
|
|
return flag&syscall.FDFLAG_NONBLOCK != 0
|
|
}
|
|
|
|
/* TODO(xsw):
|
|
// This helper is implemented in the syscall package. It means we don't have
|
|
// to redefine the fd_fdstat_get host import or the fdstat struct it
|
|
// populates.
|
|
//
|
|
//-go:linkname fd_fdstat_get_flags syscall.fd_fdstat_get_flags
|
|
func fd_fdstat_get_flags(fd int) (uint32, error)
|
|
*/
|