2017-09-15
man-pages-ru
Russian man pages from the Linux Documentation Project
manpages-dev
Manual pages about using GNU/Linux for development
man-pages
Linux kernel and C library user-space interface documentation
ИМЯ
posix_openpt - открывает псевдо-терминальное устройство
ОБЗОР
#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) нуля или более следующих флагов:
O_RDWR | Открыть устройство для чтения и записи. Обычно, указывается этот флаг. |
O_NOCTTY | |
Не делать данное устройство управляющим терминалом процесса. |
ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
При успешном выполнении posix_openpt() возвращает неотрицательный файловый дескриптор с наименьшим номером неиспользуемого файлового дескриптора. При ошибке возвращается -1, и в errno записывается номер ошибки.
ОШИБКИ
Смотрите open(2).
ВЕРСИИ
Поддержка posix_openpt() в glibc появилась в версии 2.2.1.
АТРИБУТЫ
Описание терминов данного раздела смотрите в attributes(7).
Интерфейс | Атрибут | Значение |
posix_openpt() | Безвредность в нитях | MT-Safe |
СООТВЕТСТВИЕ СТАНДАРТАМ
POSIX.1-2001, POSIX.1-2008.
Функция posix_openpt() является частью поддержки псевдо-терминалов UNIX 98 (смотрите pts(4)).
ЗАМЕЧАНИЯ
В некоторых старых реализациях UNIX, поддерживающих System V (также называемом UNIX 98), для псевдо-терминалов нет этой функции, но её легко написать:
int posix_openpt(int flags) {
return open("/dev/ptmx", flags); }
return open("/dev/ptmx", flags); }
При вызове posix_openpt() создаётся путь для соответствующего подчинённого псевдо-терминального устройства. Путь подчинённого устройства можно получить с помощью ptsname(3). Путь подчинённого устройства существует только пока открыто главное устройство.