HPUX termiox[7]






 termiox(7)                                                       termiox(7)

                                 HP-PB Only



 NAME
      termiox - extended general terminal interface

 SYNOPSIS
      #include <sys/termiox.h>

      ioctl (int fildes, int request, struct termiox * arg)

 DESCRIPTION
      The extended general terminal interface supplements the termio(7)
      general terminal interface by adding support for asynchronous hardware
      flow control and local implementations of additional asynchronous
      features.  Some systems may not support all of these capabilities
      because of hardware or software limitations.  Other systems may not
      permit certain functions to be disabled.  In such cases, the
      appropriate bits are ignored.  If the capabilities can be supported,
      the interface described here must be used.

    Hardware Flow Control Modes
      Hardware flow control supplements the termio IXON, IXOFF, and IXANY
      character flow control (see termio(7)).  Character flow control occurs
      when one device controls the data transfer of another device by
      inserting control characters in the data stream between devices.
      Hardware flow control occurs when one device controls the data
      transfer of another device by using electrical control signals on
      wires (circuits) of the asynchronous interface.  Character flow
      control and hardware flow control can be simultaneously set.

      In asynchronous, full duplex applications, the use of the Electronics
      Industries Association's EIA-232-D Request To Send (RTS) and Clear To
      Send (CTS) circuits is the preferred method of hardware flow control.

      The EIA-232-D standard specified only unidirectional hardware flow
      control where the Data Circuit-terminating Equipment or Data
      Communications Equipment (DCE) indicates to the Data Terminal
      Equipment (DTE) to stop transmitting data.  The termiox interface
      allows both unidirectional and bidirectional hardware flow control;
      when bidirectional flow control is enabled, either the DCE or DTE can
      indicate to each other to stop transmitting data across the interface.

    Clock Modes
      Isochronous flow control and clock mode communication are not
      supported.

    Terminal Parameters
      Parameters that control the behavior of devices providing the termiox
      interface are specified by the termiox structure, defined in the
      <sys/termiox.h> header file.  Several ioctl() system calls (see
      ioctl(5)) that fetch or change these parameters use the termiox
      structure which contains the following members:




 Hewlett-Packard Company            - 1 -     HP-UX Release 9.0: August 1992






 termiox(7)                                                       termiox(7)

                                 HP-PB Only



           unsigned short x_hflag;     /* hardware flow control modes */
           unsigned short x_cflag;     /* clock modes */
           unsigned short x_rflag;     /* reserved modes */
           unsigned short x_sflag;     /* spare local modes */

      The x_hflag field describes hardware flow control modes:

           RTSXOFF  0000001  Enable RTS hardware flow control on input.
           CTSXON   0000002  Enable CTS hardware flow control on input.

      The RTS and CTS circuits are involved in establishing CCITT modem
      connections.  Since RTS and CTS circuits are used both by CCITT modem
      connections and by hardware flow control, CCITT modem and hardware
      flow control cannot be simultaneously enabled.

      Variations of different hardware flow control methods can be selected
      by setting the appropriate bits.  For example, bidirectional RTS/CTS
      flow control is selected by setting both the RTSXOFF and CTSXON bits.
      Unidirectional CTS hardware flow control is selected by setting only
      the CTSXON bit.

      If RTSXOFF is set, the Request to Send (RTS) circuit (line) is raised,
      and if the asynchronous port needs to have its input stopped, it
      lowers the Request to Send (RTS) line.  If the RTS line is lowered, it
      is assumed that the connected device will stop its output until RTS is
      raised.

      If CTSXON is set, output occurs only if the Clear To Send (CTS)
      circuit (line) is raised by the connected device.  If the CTS line is
      lowered by the connected device, output is suspended until CTS is
      raised.

    termiox Structure Related IOCTL Command
      The ioctl() system calls that reference the termiox structure have the
      form:

           ioctl (fildes, command, arg)
           struct termiox *arg;

      Commands using this form are:

           TCGETX         The argument is a pointer to a termiox structure.
                          The current terminal parameters are fetched and
                          stored into that structure.

           TCSETX         The argument is a pointer to a termiox structure.
                          The current terminal parameters are set from the
                          values stored in that structure.  The change is
                          immediate.  Errors that can be returned include:





 Hewlett-Packard Company            - 2 -     HP-UX Release 9.0: August 1992






 termiox(7)                                                       termiox(7)

                                 HP-PB Only



                               [EINVAL]    The port does not support
                                           hardware flow control.

                               [ENOTTY]    The file descriptor for this port
                                           is configured for CCITT mode
                                           access.  Hardware flow control is
                                           not allowed on CCITT mode
                                           devices.

           TCSETXW        The argument is a pointer to a termiox structure.
                          The current terminal parameters are set from the
                          values stored in that structure.  The change
                          occurs after all characters queued for output have
                          been transmitted.  This form should be used when
                          changing parameters that affect output.  Errors
                          that can be returned include:

                               [EINVAL]    The port does not support
                                           hardware flow control.

                               [ENOTTY]    The file descriptor for this port
                                           is configured for CCITT mode
                                           access.  Hardware flow control is
                                           not allowed on CCITT mode
                                           devices.

           TCSETXF        The argument is a pointer to a termiox structure.
                          The current terminal parameters are set from the
                          values stored in that structure.  The change
                          occurs after all characters queued for output have
                          been transmitted; all characters queued for input
                          are discarded, then the change occurs.  Errors
                          that can be returned include:

                               [EINVAL]    The port does not support
                                           hardware flow control.

                               [ENOTTY]    The file descriptor for this port
                                           is configured for CCITT mode
                                           access.  Hardware flow control is
                                           not allowed on CCITT mode
                                           devices.

 AUTHOR
      termiox was developed by HP and AT&T.

 FILES
      Files in or under /dev/tty*.

 SEE ALSO
      ioctl(2), termio(7), modem(7).



 Hewlett-Packard Company            - 3 -     HP-UX Release 9.0: August 1992