Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ timod(HW) — OpenDesktop 2.0.0a

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

tirdwr(HW)


 timod(HW)                       19 June 1992                       timod(HW)


 Name

    timod - Transport Interface cooperating STREAMS module

 Description

    timod is a STREAMS module for use with the Transport Layer Interface
    (TLI) functions of the Network Services library.  The timod module con-
    verts a set of ioctl(S) calls into STREAMS messages that may be consumed
    by a transport protocol provider which supports the Transport Layer
    Interface.  This allows a user to initiate certain TLI functions as
    atomic operations.

    The timod module must only be pushed onto a stream terminated by a trans-
    port protocol provider which supports the TLI.

    All STREAMS messages, with the exception of the message types generated
    from the ioctl commands described below, will be transparently passed to
    the neighboring STREAMS module or driver.  The messages generated from
    the following ioctl commands are recognized and processed by the timod
    module.  The format of the ioctl call is:

       #include <sys/stropts.h>
                       -
                       -
       struct strioctl strioctl;
                       -
                       -
       strioctl.ic_cmd = cmd;
       strioctl.ic_timeout = INFTIM;
       strioctl.ic_len = size;
       strioctl.ic_dp = (char *)buf
       ioctl(fildes, I_STR, &strioctl);

    where, on issuance, size is the size of the appropriate TLI message to be
    sent to the transport provider and on return, size is the size of the
    appropriate TLI message from the transport provider in response to the
    issued TLI message.  buf is a pointer to a buffer large enough to hold
    the contents of the appropriate TLI messages.  The TLI message types are
    defined in <sys/tihdr.h>.  The possible values for the cmd field are:

    TIBIND        Bind an address to the underlying transport protocol pro-
                   vider.  The message issued to the TIBIND ioctl is
                   equivalent to the TLI message type TBINDREQ and the mes-
                   sage returned by the successful completion of the ioctl is
                   equivalent to the TLI message type TBINDACK.

    TIUNBIND      Unbind an address from the underlying transport protocol
                   provider.  The message issued to the TIUNBIND ioctl is
                   equivalent to the TLI message type TUNBINDREQ and the
                   message returned by the successful completion of the ioctl
                   is equivalent to the TLI message type TOKACK.

    TIGETINFO     Get the TLI protocol specific information from the trans-
                   port protocol provider.  The message issued to the
                   TIGETINFO ioctl is equivalent to the TLI message type
                   TINFOREQ and the message returned by the successful com-
                   pletion of the ioctl is equivalent to the TLI message type
                   TINFOACK.

    TIOPTMGMT     Get, set, or negotiate, protocol specific options with the
                   transport protocol provider.  The message issued to the
                   TIOPTMGMT ioctl is equivalent to the TLI message type
                   TOPTMGMTREQ, and the message returned by the successful
                   completion of the ioctl is equivalent to the TLI message
                   type TOPTMGMTACK.

 Files

    <sys/timod.h>
    <sys/tiuser.h>
    <sys/tihdr.h>
    <sys/errno.h>

 See also

    tirdwr(HW)

 Diagnostics

    If the ioctl system call returns with a value greater than 0, the lower 8
    bits of the return value will be one of the TLI error codes as defined in
    <sys/tiuser.h>.  If the TLI error is of type TSYSERR, then the next 8
    bits of the return value will contain an error as defined in
    <sys/errno.h> (see intro(S)).


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