Provided by: manpages-ru-dev_4.27.0-1_all bug

НАИМЕНОВАНИЕ

       tcgetpgrp, tcsetpgrp - возвращает и задаёт терминал активной группы процессов

БИБЛИОТЕКА

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

ОБЗОР

       #include <unistd.h>

       pid_t tcgetpgrp(int fd);
       int tcsetpgrp(int fd, pid_t pgrp);

ОПИСАНИЕ

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

       Функция tcsetpgrp() делает  группу  процессов  с  идентификатором  pgrp  активной  группой  процессов  на
       терминале, связанном с fd, который должен быть управляющим терминалом для вызывающего процесса, и все ещё
       быть  связанным с его сеансом. Более того, pgrp должно быть (непустой) группой процессов, принадлежащей к
       тому же сеансу, что и вызывающий процесс.

       Если tcsetpgrp() вызывается членом группы фоновых процессов  в  этом  сеансе,  и  вызывающий  процесс  не
       блокирует  или  игнорирует  SIGTTOU,  то  сигнал  SIGTTOU  отправляется  всем  членам этой группы фоновых
       процессов.

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

       When fd refers to the controlling terminal of the calling process, the function tcgetpgrp()  will  return
       the  foreground  process  group ID of that terminal if there is one, and some value larger than 1 that is
       not presently a process group ID otherwise.  When fd does not refer to the controlling  terminal  of  the
       calling process, -1 is returned, and errno is set to indicate the error.

       When  successful,  tcsetpgrp()   returns  0.   Otherwise, it returns -1, and errno is set to indicate the
       error.

ОШИБКИ

       EBADF  Значение fd не является правильным файловым дескриптором.

       EINVAL Неподдерживаемое значение pgrp.

       ENOTTY Вызывающий процесс не имеет управляющего терминала, или он имеется, но  не  описан  fd,  или,  для
              tcsetpgrp(), этот управляющий терминал больше не связан с сеансом вызывающего процесса.

       EPERM  В pgrp содержится поддерживаемое значение, но это не идентификатор группы процессов для процесса в
              том же сеансе, что и вызывающий процесс.

АТРИБУТЫ

       Описание терминов данного раздела смотрите в attributes(7).
       ┌─────────────────────────────────────────────────────────────────────┬──────────────────────┬──────────┐
       │ ИнтерфейсАтрибутЗначение │
       ├─────────────────────────────────────────────────────────────────────┼──────────────────────┼──────────┤
       │ tcgetpgrp(), tcsetpgrp()                                            │ Безвредность в нитях │ MT-Safe  │
       └─────────────────────────────────────────────────────────────────────┴──────────────────────┴──────────┘

ВЕРСИИ

       Эти функции реализованы через вызовы ioctl TIOCGPGRP и TIOCSPGRP.

СТАНДАРТЫ

       POSIX.1-2008.

ИСТОРИЯ

       POSIX.1-2001.

       Эти вызовы ioctl появились в 4.2BSD. Функции являются изобретениями POSIX.

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

       setpgid(2), setsid(2), credentials(7)

ПЕРЕВОД

       Русский  перевод  этой  страницы  руководства  разработал(и) Azamat Hackimov <azamat.hackimov@gmail.com>,
       Dmitry   Bolkhovskikh   <d20052005@yandex.ru>,   Yuri   Kozlov    <yuray@komyakino.ru>,    Иван    Павлов
       <pavia00@gmail.com> и Kirill Rekhov <krekhov.dev@gmail.com>

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

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

Справочные страницы Linux 6.9.1                   2 мая 2024 г.                                     tcgetpgrp(3)