github.com/tetratelabs/wazero@v1.2.1/internal/sysfs/stat_unsupported.go (about)

     1  //go:build (!((amd64 || arm64 || riscv64) && linux) && !((amd64 || arm64) && (darwin || freebsd)) && !((amd64 || arm64) && windows)) || js
     2  
     3  package sysfs
     4  
     5  import (
     6  	"io/fs"
     7  	"os"
     8  	"syscall"
     9  
    10  	"github.com/tetratelabs/wazero/internal/fsapi"
    11  	"github.com/tetratelabs/wazero/internal/platform"
    12  )
    13  
    14  func lstat(path string) (fsapi.Stat_t, syscall.Errno) {
    15  	t, err := os.Lstat(path)
    16  	if errno := platform.UnwrapOSError(err); errno == 0 {
    17  		return statFromFileInfo(t), 0
    18  	} else {
    19  		return fsapi.Stat_t{}, errno
    20  	}
    21  }
    22  
    23  func stat(path string) (fsapi.Stat_t, syscall.Errno) {
    24  	t, err := os.Stat(path)
    25  	if errno := platform.UnwrapOSError(err); errno == 0 {
    26  		return statFromFileInfo(t), 0
    27  	} else {
    28  		return fsapi.Stat_t{}, errno
    29  	}
    30  }
    31  
    32  func statFile(f *os.File) (fsapi.Stat_t, syscall.Errno) {
    33  	return defaultStatFile(f)
    34  }
    35  
    36  func inoFromFileInfo(_ string, t fs.FileInfo) (ino uint64, err syscall.Errno) {
    37  	return
    38  }
    39  
    40  func statFromFileInfo(t fs.FileInfo) fsapi.Stat_t {
    41  	return StatFromDefaultFileInfo(t)
    42  }