PTY(7) PTY(7)
NAME
pty - pseudo-terminal driver
SYNOPSIS
#include <sys/pty.h>
DESCRIPTION
The pty driver provides support for a device-pair termed a
pseudo-terminal. A pseudo-terminal is a pair of character
devices, a master device and a slave device. The slave
device processes an interface identical to that described in
tty(4). However, whereas all other devices providing the
interface described in tty(4) have a hardware device of some
sort behind them, the slave device has another process
manipulating it through the master half of the
pseudo-terminal. That is, anything written on the master
device is given to the slave device as input, and anything
written on the slave device is presented as input on the
master device.
In configuring, if no optional "count" is given in the
specification, 16 pseudo-terminal pairs are configured.
The following ioctl calls apply only to pseudo-terminals:
TIOCPKT
Enable/disable packet mode. Packet mode is enabled by
specifying (by reference) a nonzero parameter; it is
disabled by specifying (by reference) a zero parameter.
When applied to the master side of a pseudo-terminal,
each subsequent read from the terminal will return data
written on the slave part of the pseudo-terminal preceded
by a zero byte (symbolically defined as TIOCPKT_DATA), or
a single byte reflecting control status information. In
the latter case, the byte is an inclusive-or of zero or
more of the bits:
TIOCPKT_FLUSHREAD
Whenever the read queue for the terminal is flushed.
Page 1 May 1989
PTY(7) PTY(7)
TIOCPKT_FLUSHWRITE
Whenever the write queue for the terminal is flushed.
TIOCPKT_STOP
Whenever output to the terminal is stopped with ^S.
TIOCPKT_START
Whenever output to the terminal is restarted.
TIOCPKT_DOSTOP
Whenever t_stopc is ^S and t_startc is ^Q.
TIOCPKT_NOSTOP
Whenever the start and stop characters are not ^S/^Q.
This mode is used by rlogin(1) and rlogind(1M) to implement
a remote-echoed, locally ^S/^Q flow-controlled remote login
with proper back-flushing of output; it can be used by other
similar programs.
FILES
/dev/pty[p-r][0-9a-f] master pseudo-terminals
/dev/tty[p-r][0-9a-f] slave pseudo-terminals
BUGS
It is not possible to send an EOT.
Page 2 May 1989