*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->HP-UX 11i man pages -> pckt (7)              
Title
Content
Arch
Section
 

Contents


 pckt(7)                                                             pckt(7)




 NAME    [Toc]    [Back]
      pckt - Packet Mode module for STREAMS pty (pseudo-terminal)

 SYNOPSIS    [Toc]    [Back]
      #include <sys/stropts.h>

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

 DESCRIPTION    [Toc]    [Back]
      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



 Hewlett-Packard Company            - 1 -   HP-UX 11i Version 2: August 2003






 pckt(7)                                                             pckt(7)




              flush the write queues properly, the module also sends an
              M_FLUSH message with the FLUSHW flag set.

 AUTHOR    [Toc]    [Back]
      pckt(7) was developed by HP and OSF.

 SEE ALSO    [Toc]    [Back]
      getmsg(2), ioctl(2), ptm(7), pts(7), ldterm(7), ptem(7), streamio(7).


 Hewlett-Packard Company            - 2 -   HP-UX 11i Version 2: August 2003
[ Back ]
      
      
 Similar pages
Name OS Title
ptm HP-UX STREAMS master pty (pseudo-terminal) driver
pts HP-UX STREAMS slave pty (pseudo-terminal) driver
ptem HP-UX STREAMS pty (pesudo-terminal) Emulation module
telm HP-UX STREAMS Telnet slave (pseudo-terminal) driver, STREAMS Telnet master driver (used by telnetd only), respective
tels HP-UX STREAMS Telnet slave (pseudo-terminal) driver, STREAMS Telnet master driver (used by telnetd only), respective
ldterm HP-UX standard STREAMS terminal line discipline module
ifnet Tru64 STREAMS ifnet module for bridging STREAMS device drivers to sockets
nstrpty HP-UX maximum number of STREAMS-based pseudo terminals (pts)
alpq IRIX query the alp STREAMS module
ldterm Tru64 STREAMS line discipline module
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service