timod(7M)




NAME

     timod - Transport Interface cooperating STREAMS module


SYNOPSIS

     #include <sys/stropts.h>

     ioctl(fildes, I_STR, &my_strioctl);


DESCRIPTION

     timod is a STREAMS module for use with the Transport  Inter-
     face  ("TI")  functions of the Network Services library. The
     timod module converts a set of  ioctl(2) calls into  STREAMS
     messages  that  may be consumed by a transport protocol pro-
     vider that supports the Transport Interface. This  allows  a
     user to initiate certain TI functions as atomic operations.

     The timod module must be pushed  onto  only  a  stream  ter-
     minated  by  a transport protocol provider that supports the
     TI.

     All STREAMS messages, with  the  exception  of  the  message
     types  generated  from  the  ioctl commands described below,
     will be transparently passed to the  neighboring  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 my_strioctl;
               -
               -
     strioctl.ic_cmd = cmd;
     strioctl.ic_timout = INFTIM;
     strioctl.ic_len = size;
     strioctl.ic_dp = (char *)buf
     ioctl(fildes, I_STR, &my_strioctl);

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

     TI_BIND
           Bind an address to the underlying  transport  protocol
           provider.  The message issued to the  TI_BIND ioctl is
           equivalent to the TI message type  T_BIND_REQ and  the
           message  returned  by the successful completion of the
           ioctl is equivalent to the TI message type T_BIND_ACK.

     TI_UNBIND
           Unbind an address from the underlying transport proto-
           col  provider.  The  message  issued to the  TI_UNBIND
           ioctl  is  equivalent   to   the   TI   message   type
           T_UNBIND_REQ  and the message returned by the success-
           ful completion of the ioctl is equivalent  to  the  TI
           message type T_OK_ACK.

     TI_GETINFO
           Get the TI  protocol  specific  information  from  the
           transport protocol provider. The message issued to the
           TI_GETINFO ioctl is equivalent to the TI message  type
           T_INFO_REQ  and the message returned by the successful
           completion of the ioctl is equivalent to the  TI  mes-
           sage type T_INFO_ACK.

     TI_OPTMGMT
           Get, set, or negotiate protocol specific options  with
           the transport protocol provider. The message issued to
           the  TI_OPTMGMT ioctl is equivalent to the TI  message
           type   T_OPTMGMT_REQ  and  the message returned by the
           successful completion of the ioctl  is  equivalent  to
           the TI message type T_OPTMGMT_ACK.


FILES

     <sys/timod.h>
           ioctl definitions

     <sys/tiuser.h>
           TLI interface declaration and structure file

     <sys/tihdr.h>
           TPI declarations and user-level code

     <sys/errno.h>
           system error messages file. Please see errno(3C).


SEE ALSO

     intro(3), ioctl(2), errno(3C), tirdwr(7M)

     STREAMS Programming Guide


DIAGNOSTICS

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


Man(1) output converted with man2html