Scroll to navigation

grantpt(3) Library Functions Manual grantpt(3)

ИМЯ

grantpt - разрешает доступ для подчинённому псевдотерминалу

БИБЛИОТЕКА

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

СИНТАКСИС

#include <stdlib.h>
int grantpt(int fd);

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

grantpt():


Начиная с glibc 2.24:
_XOPEN_SOURCE >= 500
В версии glibc 2.23 и более ранних:
_XOPEN_SOURCE

ОПИСАНИЕ

The grantpt() function changes the mode and owner of the slave pseudoterminal device corresponding to the master pseudoterminal referred to by the file descriptor fd. The user ID of the slave is set to the real UID of the calling process. The group ID is set to an unspecified value (e.g., tty). The mode of the slave is set to 0620 (crw--w----).

Поведение grantpt() не определено, если установлен обработчик сигналов для перехвата сигналов SIGCHLD.

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

When successful, grantpt() returns 0. Otherwise, it returns -1 and sets errno to indicate the error.

ОШИБКИ

Невозможно получить доступ к соответствующему подчинённому псевдотерминалу.
Аргумент fd не является правильным открытым файловым дескриптором.
Значение fd корректно, но не связано с основным псевдотерминалом.

АТРИБУТЫ

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

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

СТАНДАРТЫ

POSIX.1-2008.

ИСТОРИЯ

glibc 2.1. POSIX.1-2001.

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

Historical systems implemented this function via a set-user-ID helper binary called "pt_chown". glibc on Linux before glibc 2.33 could do so as well, in order to support configurations with only BSD pseudoterminals; this support has been removed. On modern systems this is either a no-op —with permissions configured on pty allocation, as is the case on Linux— or an ioctl(2).

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

open(2), posix_openpt(3), ptsname(3), unlockpt(3), pts(4), pty(7)

ПЕРЕВОД

Русский перевод этой страницы руководства разработал(и) Azamat Hackimov <azamat.hackimov@gmail.com>, Dmitry Bolkhovskikh <d20052005@yandex.ru>, Vladislav <ivladislavefimov@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