PCKT(4M) STREAMS Modules PCKT(4M)
NAME
pckt - STREAMS Packet Mode module
SYNOPSIS
int ioctl(
fd, I_PUSH, "pckt");
DESCRIPTION
pckt is a STREAMS module that may be used with a pseudo terminal to
packetize certain messages. The
pckt module should be pushed (see
I_PUSH on
streamio(4I)) onto the manager side of a pseudo terminal.
Packetizing is performed by prefixing a message with an
M_PROTO message. The original message type is stored in the 1 byte data
portion of the
M_PROTO message.
On the read-side, only the
M_PROTO,
M_PCPROTO,
M_STOP,
M_START,
M_STOPI,
M_STARTI,
M_IOCTL,
M_DATA,
M_FLUSH, and
M_READ messages are
packetized. All other message types are passed upstream unmodified.
Since all unread state information is held in the manager's stream
head read queue, flushing of this queue is disabled.
On the write-side, all messages are sent down unmodified.
With this module in place, all reads from the manager side of the
pseudo terminal should be performed with the
getmsg(2) or
getpmsg()
function. The control part of the message contains the message type.
The data part contains the actual data associated with that message
type. The onus is on the application to separate the data into its
component parts.
SEE ALSO
getmsg(2),
ioctl(2),
streamio(4I),
termio(4I),
ldterm(4M),
ptem(4M) STREAMS Programming Guide February 5, 2022 PCKT(4M)