Man

Command Section
TTYNAME(3)             FreeBSD Library Functions Manual             TTYNAME(3)

NAME
     ttyname, ttyname_r, isatty - get name of associated terminal (tty) from
     file descriptor

LIBRARY
     Standard C Library (libc, -lc)

SYNOPSIS
     #include <unistd.h>

     char *
     ttyname(int fd);

     int
     ttyname_r(int fd, char *buf, size_t len);

     int
     isatty(int fd);

DESCRIPTION
     These functions operate on file descriptors for terminal type devices.

     The isatty() function determines if the file descriptor fd refers to a
     valid terminal type device.

     The ttyname() function gets the related device name of a file descriptor
     for which isatty() is true.

     The ttyname() function returns the name stored in a static buffer which
     will be overwritten on subsequent calls.  The ttyname_r() function takes
     a buffer and length as arguments to avoid this problem.

RETURN VALUES
     The isatty() function returns 1 if fd refers to a terminal type device;
     otherwise, it returns 0 and may set errno to indicate the error.  The
     ttyname() function returns the null terminated name if the device is
     found and isatty() is true; otherwise a NULL pointer is returned.  The
     ttyname_r() function returns 0 if successful.  Otherwise an error number
     is returned.

ERRORS
     These functions may fail if:

     [EBADF]            The fd argument is not a valid file descriptor.

     [ENOTTY]           The file associated with fd is not a terminal.

     Additionally, ttyname_r() may fail if:

     [ERANGE]           The bufsize argument is smaller than the length of the
                        string to be returned.

SEE ALSO
     fdevname(3), ptsname(3), tcgetattr(3), tty(4)

HISTORY
     The isatty() and ttyname() functions appeared in Version 7 AT&T UNIX.
     The ttyname_r() function appeared in FreeBSD 6.0.

FreeBSD 11.1-RELEASE-p4          July 18, 2014         FreeBSD 11.1-RELEASE-p4
Command Section