liuxiaolong
2020-09-16 4501e38ca66f09b35aaaf43fa5a316554930fcf4
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
// +build solaris
// +build !appengine
 
package isatty
 
import (
    "golang.org/x/sys/unix"
)
 
// IsTerminal returns true if the given file descriptor is a terminal.
// see: http://src.illumos.org/source/xref/illumos-gate/usr/src/lib/libbc/libc/gen/common/isatty.c
func IsTerminal(fd uintptr) bool {
    var termio unix.Termio
    err := unix.IoctlSetTermio(int(fd), unix.TCGETA, &termio)
    return err == nil
}