Provided by: manpages-es_1.55-10_all bug

NOMBRE

       tcgetpgrp, tcsetpgrp - obtienen y establecen el grupo de procesos en primer plano de la terminal

SINOPSIS

       #include <unistd.h>

       pid_t tcgetpgrp(int fd);

       int tcsetpgrp(int fd, pid_t pgrp);

DESCRIPCIÓN

       La  función  tcgetpgrp()  devuelve  el identificador de grupo de procesos del grupo de procesos en primer
       plano en la terminal asociada a fd, que debe ser la terminal de control del proceso invocador.

       La función tcsetpgrp() convierte el grupo de procesos con identificador pgrp en el grupo de  procesos  en
       primer  plano  en la terminal asociada a fd, que debe ser la terminal de control del proceso invocador, y
       debe estar todavía asociada con su sesión.  Además, pgrp  debe  ser  un  grupo  de  procesos  (no  vacío)
       perteneciente a la misma sesión que el proceso invocador.

       Si  tcsetpgrp()  es  llamada  por  un miembro de un grupo de procesos en segundo plano en su sesión, y el
       proceso invocador no está bloqueando o ignorando SIGTTOU, se envía una señal SIGTTOU a todos los miembros
       de este grupo de procesos en segundo plano.

VALOR DEVUELTO

       Cuando  fd  hace  referencia  a  la  terminal  de  control  del proceso invocador, la función tcgetpgrp()
       devolverá el identificador del grupo de procesos en primer plano de esa terminal  si  hay  uno,  y  algún
       valor  mayor  que 1 en caso contrario.  Cuando fd no hace referencia a la terminal de control del proceso
       invocador, se devuelve -1 y se modifica errno con el valor apropiado.

       Cuando tiene éxito, tcsetpgrp() devuelve 0. En otro caso, devuelve -1, y se modifica errno con  el  valor
       apropiado.

ERRORES

       EBADF  fd no es un descriptor de fichero válido.

       EINVAL pgrp tiene un valor no válido.

       EPERM  pgrp  tiene  un valor válido, pero no es el identificador de grupo de procesos de un proceso en la
              misma sesión que el proceso invocador.

       ENOTTY El proceso invocador no tiene una terminal de control, o tiene una pero no está descrita  por  fd,
              o,  para  tcsetpgrp(),  esta  terminal  de  control  ha dejado de estar asociada con la sesión del
              proceso invocador.

OBSERVACIONES

       Estas funciones fueron implementadas a través de los ioctls TIOCGPGRP y TIOCSPGRP.

HISTORIA

       Estos ioctls aparecieron en 4.2 BSD. Las funciones son invenciones de POSIX.

CONFORME A

       POSIX.1

VÉASE TAMBIÉN

       setpgid(2), setsid(2)