Scroll to navigation

posix_openpt(3) Library Functions Manual posix_openpt(3)

ИМЯ

posix_openpt - открывает псевдо-терминальное устройство

БИБЛИОТЕКА

Стандартная библиотека языка C (libc, -lc)

СИНТАКСИС

#include <stdlib.h>
#include <fcntl.h>
int posix_openpt(int flags);

Требования макроса тестирования свойств для glibc (см. feature_test_macros(7)):

posix_openpt():


_XOPEN_SOURCE >= 600

ОПИСАНИЕ

Функция posix_openpt() открывает неиспользуемое главное псевдо-терминальное устройство, возвращая файловый дескриптор, который можно использовать для работы с устройством.

Аргумент flags представляет собой битовую маску из комбинации (OR) нуля или более следующих флагов:

Открыть устройство для чтения и записи. Обычно, указывается этот флаг.
Не делать данное устройство управляющим терминалом процесса.

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

On success, posix_openpt() returns a file descriptor (a nonnegative integer) which is the lowest numbered unused file descriptor. On failure, -1 is returned, and errno is set to indicate the error.

ОШИБКИ

Смотрите open(2).

АТРИБУТЫ

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

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

СТАНДАРТЫ

POSIX.1-2008.

ИСТОРИЯ

glibc 2.2.1. POSIX.1-2001.

It is part of the UNIX 98 pseudoterminal support (see pts(4)).

ПРИМЕЧАНИЯ

Some older UNIX implementations that support System V (aka UNIX 98) pseudoterminals don't have this function, but it can be easily implemented by opening the pseudoterminal multiplexor device:


int
posix_openpt(int flags)
{

return open("/dev/ptmx", flags); }

При вызове posix_openpt() создаётся путь для соответствующего подчинённого псевдо-терминального устройства. Путь подчинённого устройства можно получить с помощью ptsname(3). Путь подчинённого устройства существует только пока открыто главное устройство.

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

open(2), getpt(3), grantpt(3), ptsname(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 6.8