ИМЯ

ptsname, ptsname_r - возвращает имя подчинённого псевдо-терминала

LIBRARY

Standard C library ( libc, -lc)

СИНТАКСИС

#include <stdlib.h>
char *ptsname(int fd);
int ptsname_r(int fd, char buf[.buflen], size_t buflen);
Требования макроса тестирования свойств для glibc (см. feature_test_macros(7)):
ptsname():
    Начиная с glibc 2.24:
        _XOPEN_SOURCE >= 500
    В версии glibc 2.23 и более ранних:
        _XOPEN_SOURCE
ptsname_r():
    _GNU_SOURCE

ОПИСАНИЕ

The ptsname() function returns the name of the slave pseudoterminal device corresponding to the master referred to by the file descriptor fd.
Функция ptsname_r() является реентерабельным эквивалентном ptsname(). Она сохраняет имя устройства подчинённого псевдо-терминала в виде строки (завершающейся null) в буфер, указанный в buf. В аргументе buflen задаётся количество байт, доступных в buf.

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

При успешном выполнении ptsname() возвращает указатель на строку в статическом хранилище, которая будет перезаписана последующими вызовами. Данный указатель не нужно освобождать. При ошибке возвращается NULL.
On success, ptsname_r() returns 0. On failure, an error number is returned to indicate the error.

ОШИБКИ

EINVAL
(только ptsname_r()) Значение buf равно NULL (эта ошибка возвращается только в glibc 2.25 и старее).
ENOTTY
Значение fd не ссылается на устройство главного псевдо-терминала.
ERANGE
(только ptsname_r()) Значение buf слишком мало.

ВЕРСИИ

ptsname() is provided since glibc 2.1.

АТРИБУТЫ

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

СТАНДАРТЫ

ptsname():
POSIX.1-2001, POSIX.1-2008.
Функция ptsname() является частью поддержки псевдо-терминалов UNIX 98 (смотрите pts(4)).
Функция ptsname_r() является расширением Linux, которую предполагается включить в следующую большую версию POSIX.1 (Issue 8). Версия этой функции описана в Tru64 и HP-UX, но в их реализациях при ошибке возвращается -1, а в errno записывается номер ошибки. Не используйте эту функцию в переносимых программах.

СМ. ТАКЖЕ

grantpt(3), posix_openpt(3), ttyname(3), unlockpt(3), pts(4), pty(7)

ПЕРЕВОД

Русский перевод этой страницы руководства был сделан Alexey, Azamat Hackimov <[email protected]>, kogamatranslator49 <[email protected]>, Kogan, Max Is <[email protected]>, Yuri Kozlov <[email protected]> и Иван Павлов <[email protected]>
Этот перевод является бесплатной документацией; прочитайте Стандартную общественную лицензию GNU версии 3 или более позднюю, чтобы узнать об условиях авторского права. Мы не несем НИКАКОЙ ОТВЕТСТВЕННОСТИ.
Если вы обнаружите ошибки в переводе этой страницы руководства, пожалуйста, отправьте электронное письмо на [email protected]

Recommended readings

Pages related to ptsname_r you should read also: