summaryrefslogtreecommitdiffstats
path: root/man/man3/isatty.3
blob: 99cb872f98fe304cb76f1f18f2a32fe321b1eb1c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
'\" t
.\" Copyright 2008, Linux Foundation, written by Michael Kerrisk
.\"     <mtk.manpages@gmail.com>
.\"
.\" SPDX-License-Identifier: Linux-man-pages-copyleft
.\"
.TH isatty 3 2024-05-02 "Linux man-pages (unreleased)"
.SH NAME
isatty \- test whether a file descriptor refers to a terminal
.SH LIBRARY
Standard C library
.RI ( libc ", " \-lc )
.SH SYNOPSIS
.nf
.B #include <unistd.h>
.P
.BI "int isatty(int " fd );
.fi
.SH DESCRIPTION
The
.BR isatty ()
function tests whether
.I fd
is an open file descriptor referring to a terminal.
.SH RETURN VALUE
.BR isatty ()
returns 1 if
.I fd
is an open file descriptor referring to a terminal;
otherwise 0 is returned, and
.I errno
is set to indicate the error.
.SH ERRORS
.TP
.B EBADF
.I fd
is not a valid file descriptor.
.TP
.B ENOTTY
.I fd
refers to a file other than a terminal.
On some older kernels, some types of files
.\" e.g., FIFOs and pipes on 2.6.32
resulted in the error
.B EINVAL
in this case (which is a violation of POSIX, which specifies the error
.BR ENOTTY ).
.SH ATTRIBUTES
For an explanation of the terms used in this section, see
.BR attributes (7).
.TS
allbox;
lbx lb lb
l l l.
Interface	Attribute	Value
T{
.na
.nh
.BR isatty ()
T}	Thread safety	MT-Safe
.TE
.SH STANDARDS
POSIX.1-2008.
.SH HISTORY
POSIX.1-2001, SVr4, 4.3BSD.
.SH SEE ALSO
.BR fstat (2),
.BR ttyname (3)