vendor/github.com/mattn/go-isatty/isatty_linux.go
changeset 251 1c52a0eeb952
parent 250 c040f992052f
child 252 8399cd48111b
equal deleted inserted replaced
250:c040f992052f 251:1c52a0eeb952
     1 // +build linux
       
     2 // +build !appengine,!ppc64,!ppc64le
       
     3 
       
     4 package isatty
       
     5 
       
     6 import (
       
     7 	"syscall"
       
     8 	"unsafe"
       
     9 )
       
    10 
       
    11 const ioctlReadTermios = syscall.TCGETS
       
    12 
       
    13 // IsTerminal return true if the file descriptor is terminal.
       
    14 func IsTerminal(fd uintptr) bool {
       
    15 	var termios syscall.Termios
       
    16 	_, _, err := syscall.Syscall6(syscall.SYS_IOCTL, fd, ioctlReadTermios, uintptr(unsafe.Pointer(&termios)), 0, 0, 0)
       
    17 	return err == 0
       
    18 }