ptsname, ptsname_r -
возвращает
имя
подчинённого
псевдо-терминала
Standard C library (
libc,
-lc)
#include <stdlib.h>
char *ptsname(int fd);
int ptsname_r(int fd, char buf[.buflen], size_t buflen);
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]