Jump to content United States-English
HP.com Home Products and Services Support and Drivers Solutions How to Buy
» Contact HP
More options
HP.com home
HP-UX Reference > P

pckt(7)

HP-UX 11i Version 3: February 2007
» 

Technical documentation

» Feedback
Content starts here

 » Table of Contents

 » Index

NAME

pckt — Packet Mode module for STREAMS pty (pseudo-terminal)

SYNOPSIS

#include <sys/stropts.h>

int ioctl(fd_slave, I_PUSH, "pckt");

DESCRIPTION

The Packet Mode feature for STREAMS pty devices allows the user process on the master side of the pty device to be informed of state changes in the pty. To enable Packet Mode in the STREAMS pty device, the user process must push the pckt module onto the master side of the pty with a call to the STREAMS I_PUSH ioctl(2) system call. When the pckt module is pushed onto a STREAMS pty master, certain STREAMS messages going upstream on the master side will get packetized so they can be subsequently retrieved by the master side with a getmsg function.

When the user process writes data, the pckt module passes the message unchanged downstream on to the next module or driver. When the user process reads data or when the pckt module receives certain STREAMS message types, it constructs a packet out of the message for forwarding upstream. To construct a message packet, the module creates an M_PROTO message. This M_PROTO message contains the original message type in the first data block and the original message in as many data blocks as needed. The user process can then retrieve the M_PROTO message with a call to the getmsg() function.

The pckt module packetizes the following STREAMS message types:

M_DATA, M_IOCTL, M_PROTO, M_PCPROTO, M_FLUSH, M_START, M_STOP, M_STARTI, M_STOPI, M_READ.

All other messages are passed unchanged upstream.

If the message is an M_FLUSH message, the pckt module looks at the flag and takes the following actions:

  • If the flag is FLUSHW, the module changes it to FLUSHR before creating the M_PROTO message and passing the message upstream. This prevents the stream head's read queue from being flushed by the original M_FLUSHmessage.

  • If the flag is FLUSHR, the module changes it to FLUSHW before creating the M_PROTO message and passing it upstream. To flush the write queues properly, the module also sends an M_FLUSH message with the FLUSHW flag set.

  • If the flag is FLUSHRW, the module changes it to FLUSHW before creating the M_PROTO message and passing it upstream. To flush the write queues properly, the module also sends an M_FLUSH message with the FLUSHW flag set.

AUTHOR

pckt(7) was developed by HP and OSF.

Printable version
Privacy statement Using this site means you accept its terms Feedback to webmaster
© 1983-2007 Hewlett-Packard Development Company, L.P.