Source file src/os/exec/internal/fdtest/exists_unix.go
1 // Copyright 2021 The Go Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style 3 // license that can be found in the LICENSE file. 4 5 //go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris 6 7 // Package fdtest provides test helpers for working with file descriptors across exec. 8 package fdtest 9 10 import ( 11 "syscall" 12 ) 13 14 // Exists returns true if fd is a valid file descriptor. 15 func Exists(fd uintptr) bool { 16 var s syscall.Stat_t 17 err := syscall.Fstat(int(fd), &s) 18 return err != syscall.EBADF 19 } 20