ttyname_r(3) возвращает имя терминала

Other Alias

ttyname

ОБЗОР

#include <unistd.h>


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

ОПИСАНИЕ

Функция ttyname() возвращает указатель на завершаемый нулевым символом путь устройства терминала, на котором был открыт файловый дескриптор fd, или NULL в случае ошибки (например, если fd не подключен к терминалу). Возвращаемое значение может указывать на статические данные, которые могут быть перезаписаны при следующем вызове. Функция ttyname_r() сохраняет имя пути в буфере buf длиной buflen.

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ

При успешном выполнении функция ttyname() возвращает указатель на имя пути. В случае ошибки возвращается NULL, в errno устанавливается код ошибки. При успешном выполнении функция ttyname_r() возвращает 0, а в случае ошибки — номер ошибки.

ОШИБКИ

EBADF
Неправильный дескриптор файла.
ENOTTY
Файловый дескриптор указывает не на устройство терминала.
ERANGE
(ttyname_r()) Значение buflen мало для хранения имени пути.

АТРИБУТЫ

Описание терминов данного раздела смотрите в attributes(7).
ИнтерфейсАтрибутЗначение
ttyname() безвредность в нитяхнебезопасно (MT-Unsafe race:ttyname)
ttyname_r() безвредность в нитяхбезвредно (MT-Safe)

СООТВЕТСТВИЕ СТАНДАРТАМ

POSIX.1-2001, POSIX.1-2008, 4.2BSD.