1timod(7M)                       STREAMS Modules                      timod(7M)
2
3
4

NAME

6       timod - Transport Interface cooperating STREAMS module
7

SYNOPSIS

9       #include <sys/stropts.h>
10
11
12       ioctl(fildes, I_STR, &my_strioctl);
13
14

DESCRIPTION

16       timod  is  a STREAMS module for use with the Transport Interface ("TI")
17       functions of the Network Services library. The timod module converts  a
18       set  of  ioctl(2) calls into STREAMS messages that may be consumed by a
19       transport protocol provider that supports the Transport Interface. This
20       allows a user to initiate certain TI functions as atomic operations.
21
22
23       The  timod  module  must  be  pushed onto only a stream terminated by a
24       transport protocol provider that supports the TI.
25
26
27       All STREAMS messages, with the exception of the message types generated
28       from  the  ioctl commands described below, will be transparently passed
29       to the neighboring module or driver. The messages  generated  from  the
30       following ioctl commands are recognized and processed by the timod mod‐
31       ule. The format of the ioctl call is:
32
33         #include <sys/stropts.h>
34                   -
35                   -
36         struct strioctl my_strioctl;
37                   -
38                   -
39         strioctl.ic_cmd = cmd;
40         strioctl.ic_timout = INFTIM;
41         strioctl.ic_len = size;
42         strioctl.ic_dp = (char *)buf
43         ioctl(fildes, I_STR, &my_strioctl);
44
45
46
47       On issuance, size is the size of the appropriate TI message to be  sent
48       to  the transport provider and on return size is the size of the appro‐
49       priate TI message from the transport provider in response to the issued
50       TI  message. buf is a pointer to a buffer large enough to hold the con‐
51       tents of the appropriate TI messages. The TI message types are  defined
52       in <sys/tihdr.h>. The possible values for the cmd field are:
53
54       TI_BIND        Bind  an  address  to  the underlying transport protocol
55                      provider. The message issued to the   TI_BIND  ioctl  is
56                      equivalent  to  the  TI message type  T_BIND_REQ and the
57                      message returned by the  successful  completion  of  the
58                      ioctl is equivalent to the TI message type T_BIND_ACK.
59
60
61       TI_UNBIND      Unbind an address from the underlying transport protocol
62                      provider. The message issued to the  TI_UNBIND ioctl  is
63                      equivalent  to the TI message type  T_UNBIND_REQ and the
64                      message returned by the  successful  completion  of  the
65                      ioctl is equivalent to the TI message type T_OK_ACK.
66
67
68       TI_GETINFO     Get the TI protocol specific information from the trans‐
69                      port  protocol  provider.  The  message  issued  to  the
70                      TI_GETINFO  ioctl  is  equivalent to the TI message type
71                      T_INFO_REQ and the message returned  by  the  successful
72                      completion  of the ioctl is equivalent to the TI message
73                      type T_INFO_ACK.
74
75
76       TI_OPTMGMT     Get, set, or negotiate protocol  specific  options  with
77                      the  transport  protocol provider. The message issued to
78                      the  TI_OPTMGMT ioctl is equivalent to  the  TI  message
79                      type  T_OPTMGMT_REQ and the message returned by the suc‐
80                      cessful completion of the ioctl is equivalent to the  TI
81                      message type T_OPTMGMT_ACK.
82
83

FILES

85       <sys/timod.h>      ioctl definitions
86
87
88       <sys/tiuser.h>     TLI interface declaration and structure file
89
90
91       <sys/tihdr.h>      TPI declarations and user-level code
92
93
94       <sys/errno.h>      system error messages file. Please see errno(3C).
95
96

SEE ALSO

98       Intro(3), ioctl(2), errno(3C), tirdwr(7M)
99
100
101       STREAMS Programming Guide
102

DIAGNOSTICS

104       If  the  ioctl returns with a value greater than 0, the lower 8 bits of
105       the return value will be one of  the  TI  error  codes  as  defined  in
106       <sys/tiuser.h>.  If  the  TI error is of type  TSYSERR, then the next 8
107       bits  of  the  return  value  will  contain  an  error  as  defined  in
108       <sys/errno.h> (see  Intro(3)).
109
110
111
112SunOS 5.11                        26 Mar 1993                        timod(7M)
Impressum