SYNOPSIS

#include <unistd.h>

char *ttyname(int fd);

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

DESCRIPTION

The function ttyname() returns a pointer to the null-terminated pathname of the terminal device that is open on the file descriptor fd, or NULL on error (for example, if fd is not connected to a terminal). The return value may point to static data, possibly overwritten by the next call. The function ttyname_r() stores this pathname in the buffer buf of length buflen.

RETURN VALUE

The function ttyname() returns a pointer to a pathname on success. On error, NULL is returned, and errno is set appropriately. The function ttyname_r() returns 0 on success, and an error number upon error.

ERRORS

EBADF

Bad file descriptor.

ENOTTY

File descriptor does not refer to a terminal device.

ERANGE

(ttyname_r()) buflen was too small to allow storing the pathname.

ATTRIBUTES

Multithreading (see pthreads(7))

The ttyname() function is not thread-safe.

The ttyname_r() function is thread-safe.

CONFORMING TO

4.2BSD, POSIX.1-2001.

RELATED TO ttyname…

COLOPHON

This page is part of release 3.74 of the Linux man-pages project. A description of the project, information about reporting bugs, and the latest version of this page, can be found at http://www.kernel.org/doc/man-pages/.