Scroll to navigation

ptsname(3) Library Functions Manual ptsname(3)

ИМЯ

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.

ОШИБКИ

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

АТРИБУТЫ

Описание терминов данного раздела смотрите в attributes(7).

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

ВЕРСИИ

A version of ptsname_r() is documented on Tru64 and HP-UX, but on those implementations, -1 is returned on error, with errno set to indicate the error. Avoid using this function in portable programs.

СТАНДАРТЫ

POSIX.1-2008.

ptsname_r() is a Linux extension, that is proposed for inclusion in the next major revision of POSIX.1 (Issue 8).

ИСТОРИЯ

POSIX.1-2001. glibc 2.1.

Функция ptsname() является частью поддержки псевдо-терминалов UNIX 98 (смотрите pts(4)).

СМОТРИТЕ ТАКЖЕ

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

ПЕРЕВОД

Русский перевод этой страницы руководства разработал Alexey, Azamat Hackimov <azamat.hackimov@gmail.com>, kogamatranslator49 <r.podarov@yandex.ru>, Darima Kogan <silverdk99@gmail.com>, Max Is <ismax799@gmail.com>, Yuri Kozlov <yuray@komyakino.ru> и Иван Павлов <pavia00@gmail.com>

Этот перевод является свободной программной документацией; он распространяется на условиях общедоступной лицензии GNU (GNU General Public License - GPL, https://www.gnu.org/licenses/gpl-3.0.html версии 3 или более поздней) в отношении авторского права, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ.

Если вы обнаружите какие-либо ошибки в переводе этой страницы руководства, пожалуйста, сообщите об этом разработчику по его адресу электронной почты или по адресу списка рассылки русских переводчиков.

2 мая 2024 г. Linux man-pages (unreleased)