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

NOMBRE

       openpty, login_tty, forkpty - utilidades tty

SINOPSIS

       #include <pty.h>  /* para openpty y forkpty */
       #include <utmp.h> /* para login_tty */

       int openpty(int *amaster, int *aslave, char *name, struct termios *termp, struct winsize *
       winp);

       int login_tty(int fd);

       pid_t forkpty(int *amaster, char *name, struct termios *termp, struct winsize *winp);

DESCRIPCIÓN

       La función openpty() busca una  pseudo-tty  disponible  y  devuelve  los  descriptores  de
       fichero  para  la pty maestra y esclava en amaster y aslave.  Si name es distinto de NULL,
       el nombre de fichero de la pty esclava se devuelve en name.  Si termp es distinto de NULL,
       se  asignará a los parámetros de terminal de la pty esclava los valores en termp.  Si winp
       es distinto de NULL, el tamaño de la ventana de la pty esclava se fijará con  los  valores
       en winp.

       La  función  login_tty()  prepara  un  inicio  de  sesión  en  la tty fd (que puede ser un
       dispositivo tty real, o la pty esclava de una pseudo-tty devuelta por  openpty())  creando
       una  nueva sesión, haciendo que fd sea la terminal de control del proceso actual, poniendo
       fd como entrada, salida y salida de error estándar del proceso actual, y cerrando fd.

       La función forkpty() combina openpty(), fork(), y login_tty() para crear un nuevo  proceso
       operando  en una pseudo-tty. El descriptor de fichero del lado maestro de la pseudo-tty es
       devuelto en amaster, y el nombre de fichero de la pty esclava en name si éste no es  NULL.
       Los  parámetros termp y winp , si no son NULL, determinarán los atributos de la terminal y
       el tamaño de la ventana del lado esclavo de la pseudo-tty.

VALOR DEVUELTO

       Si una llamada a openpty(), login_tty(), o forkpty() no tiene éxito, se devuelve -1  y  se
       modifica  errno  para indicar el error. En otro caso, openpty(), login_tty(), y el proceso
       hijo de forkpty() devuelven 0, y el proceso padre de forkpty() devuelve  el  identificador
       de proceso del proceso hijo.

ERRORES

       openpty() fallará si:

       ENOENT No hay ttys disponibles.

       login_pty()  fallará  si  ioctl() falla al poner a fd como terminal de control del proceso
       actual.

       forkpty() fallará si openpty() o fork() fallan.

FICHEROS

       /dev/[pt]ty[pqrstuwxyzabcdePQRST][0123456789abcdef]

CONFORME A

       Éstas son funciones de BSD, presentes en libc5 y glibc2.

VÉASE TAMBIÉN

       fork(2)