Technical data
ptem(7M) STREAMS Modules SunOS 5.5
NAME ptem − STREAMS Pseudo Terminal Emulation module
SYNOPSIS int ioctl( fd, I_PUSH, "ptem");
DESCRIPTION ptem is a STREAMS module that, when used in conjunction with a line discipline and
pseudo terminal driver, emulates a terminal.
The ptem module must be pushed (see I_PUSH, streamio(7I)) onto the slave side of a
pseudo terminal STREAM, before the ldterm(7M) module is pushed.
On the write-side, the TCSETA, TCSETAF, TCSETAW, TCGETA, TCSETS, TCSETSW,
TCSETSF, TCGETS, TCSBRK, JWINSIZE, TIOCGWINSZ, and TIOCSWINSZ termio
ioctl(2) messages are processed and acknowledged. If remote mode is not in effect, ptem
handles the TIOCSTI ioctl by copying the argument bytes into an M_DATA message
and passing it back up the read side. Regardless of the remote mode setting, ptem ack-
nowledges the ioctl and passes a copy of it downstream for possible further processing.
A hang up (that is, stty 0) is converted to a zero length M_DATA message and passed
downstream. Termio cflags and window row and column information are stored locally
one per stream. M_DELAY messages are discarded. All other messages are passed
downstream unmodified.
On the read-side all messages are passed upstream unmodified with the following excep-
tions. All M_READ and M_DELAY messages are freed in both directions. A TCSBRK
ioctl is converted to an M_BREAK message and passed upstream and an acknowledge-
ment is returned downstream. An TIOCSIGNAL ioctl is converted into an M_PCSIG
message, and passed upstream and an acknowledgementis returned downstream.
Finally an ioctl TIOCREMOTE is converted into an M_CTL message, acknowledged,
and passed upstream; the resulting mode is retained for use in subsequent TIOCSTI
parsing.
FILES <sys/ptem.h>
SEE ALSO stty(1), ioctl(2), ldterm(7M), pckt(7M), streamio(7I), termio(7I)
STREAMS Programming Guide
7M-262 modified 3 Jul 1990










