Query: forkpty
OS: netbsd
Section: 3
Format: Original Unix Latex Style Formatted with HTML and a Horizontal Scroll Bar
OPENPTY(3) BSD Library Functions Manual OPENPTY(3)NAMEopenpty, login_tty, forkpty -- tty utility functionsLIBRARYSystem Utilities Library (libutil, -lutil)SYNOPSIS#include <util.h> 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);DESCRIPTIONThe openpty(), login_tty(), and forkpty() functions perform manipulations on ttys and pseudo-ttys. The openpty() function finds an available pseudo-tty and returns file descriptors for the master and slave in amaster and aslave. If name is non-null, the filename of the slave is returned in name. If termp is non-null, the terminal parameters of the slave will be set to the val- ues in termp. If winp is non-null, the window size of the slave will be set to the values in winp. The login_tty() function prepares for a login on the tty fd (which may be a real tty device, or the slave of a pseudo-tty as returned by openpty()) by creating a new session, making fd the controlling terminal for the current process, setting fd to be the standard input, out- put, and error streams of the current process, and closing fd. The forkpty() function combines openpty(), fork(), and login_tty() to create a new process operating in a pseudo-tty. The file descriptor of the master side of the pseudo-tty is returned (to the parent process only) in amaster. The filename of the slave is returned (to both the parent and child processes) in name if name is non-null. The termp and winp parameters, if non-null, will determine the terminal attributes and window size of the slave side of the pseudo-tty.RETURN VALUESIf a call to openpty(), login_tty(), or forkpty() is not successful, -1 is returned and errno is set to indicate the error. Otherwise, openpty(), login_tty(), and the child process of forkpty() return 0, and the parent process of forkpty() returns the process ID of the child process.FILES/dev/[pt]ty[p-zP-T][0-9a-zA-Z]ERRORSopenpty() will fail if: [ENOENT] There are no available ttys. [EPERM] The caller was not the superuser and the ptm(4) device is missing or not configured. login_tty() will fail if ioctl() fails to set fd to the controlling terminal of the current process. forkpty() will fail if either openpty() or fork() fails.SEE ALSOfork(2)BSDNovember 28, 2008 BSD
| Related Man Pages |
|---|
| login_tty(3) - mojave |
| forkpty(3) - linux |
| login_tty(3) - linux |
| forkpty(3) - redhat |
| openpty(3) - netbsd |
| Similar Topics in the Unix Linux Community |
|---|
| struct winsize |