Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ strchg(1) — DG/UX R4.11MU05

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

autopush(1M)

streamio(7)



strchg(1)                      DG/UX R4.11MU05                     strchg(1)


NAME
       strchg, strconf - change or query stream configuration

SYNOPSIS
       strchg -h module[,module ...]

       strchg -p [ -a | -u module ]

       strchg -f file

       strconf [ -t | -m module ]

   where:
       module  The name of a STREAMS module

DESCRIPTION
       These commands alter or query the configuration of the stream
       associated with the user's standard input.  The strchg command pushes
       modules on and/or pops modules off the stream.  Only a user with
       appropriate privilege or owner of a STREAMS device may alter the
       configuration of that stream.

       For systems supporting the DG/UX Capability Option, appropriate
       privilege is defined as having one or more specific capabilities
       enabled in the effective capability set of the user.  See
       capdefaults(5) for the default capabilities for this command.

       On systems without the DG/UX Capability Option, appropriate privilege
       means that your process has an effective UID of root.  See the
       appropriateprivilege(5) man page for more information.

       The strconf command queries the configuration of the stream.  Invoked
       without any arguments, strconf prints a list of all the modules in
       the stream as well as the topmost driver.  The list is printed with
       one name per line where the first name printed is the topmost module
       on the stream (if one exists) and the last item printed is the name
       of the driver.

   Options for strchg
       -h     Push modules onto a stream.  With this option strchg takes as
              arguments the names of one or more pushable streams modules.
              These modules are pushed in order; that is, the leftmost
              module in the command line is pushed first.

       -p     Pop modules off the stream.  With no other options, strchg
              pops the topmost module from the stream.  The -a and -u
              options modify this behavior.

       -f file
              Modify the set of modules on the stream.  The file argument
              specifies a text file that contains a list of modules
              representing the desired configuration.  Each module name must
              appear on a separate line where the first name represents the
              topmost module and the last name represents the module that
              should be closest to the driver.  The strchg command will
              determine the current configuration of the stream and pop and
              push the necessary modules in order to end up with the desired
              configuration.

       -a     With the -p option, pop all the modules above the topmost
              driver.

       -u module
              With the -p option, pop all modules above but not including
              module off the stream.

       The -h, -f and -p options are mutually exclusive.  The -a and -u
       options are also mutually exclusive.

   Options for strconf
       -t     Print only the topmost module (if one exists).

       -m     Determine if the named module is present on a stream.  If it
              is, strconf prints the message yes and returns zero.  If not,
              strconf prints the message no and returns a non-zero value.

       The -t and -m options are mutually exclusive.

EXAMPLES
       strchg -h ldterm

       Push the module ldterm on the stream associated with the user's
       standard input.

       strchg -p < /dev/tty24

       Pop the topmost module from the stream associated with /dev/tty24.
       The user must be the owner of this device or have appropriate
       privilege.

       strchg -f fileconf

       If the file fileconf contains the following:

            compat
            ldterm
            ptem

       then this example will configure the user's standard input stream so
       that the module ptem is pushed over the driver, followed by ldterm,
       with compat closest to the stream head.

       strconf

       List the modules and topmost driver on the stream.  For a stream that
       has only the module ldterm pushed above the syac driver, this example
       would produce the following output:

            ldterm
            syac

       strconf -m ldterm

       Ask if ldterm is on the stream.  If so, this example produces the
       following output while returning an exit status of 0:

            yes

DIAGNOSTICS
       strchg returns zero on success.  It prints an error message and
       returns non-zero status for various error conditions, including usage
       error, bad module name, too many modules to push, failure of an
       ioctl(2) system call on the stream, or failure to open the file
       argument of the -f option.

       strconf returns zero on success (for the -m or -t option, "success"
       means the named or topmost module is present).  It returns a non-zero
       status if invoked with the -m or -t option and the module is not
       present.  It prints an error message and returns non-zero status for
       various error conditions, including usage error or failure of an
       ioctl(2) system call on the stream.

SEE ALSO
       autopush(1M), appropriateprivilege(5), streamio(7).
       capdefaults(5).

NOTES
       If the user is neither the owner of the stream nor has appropriate
       privilege, the strchg command will fail.  If the user does not have
       read permissions on the stream and does not have appropriate
       privilege, the strconf command will fail.

       If modules are pushed in the wrong order, one could end up with a
       stream that does not function as expected.  For TTY's, if the line
       discipline module (ldterm) is not pushed in the correct place, one
       could have a terminal that does not respond to any commands.


Licensed material--property of copyright holder(s)

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026