TIMOD(4M) TIMOD(4M)
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 Interface ("
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 provider 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 terminated 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 protocol
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 successful 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 message
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
ioctl(2),
Intro(3),
errno(3C),
tirdwr(4M) STREAMS Programming GuideDIAGNOSTICS
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 contain an error as defined in <
sys/errno.h>
(see
Intro(3)).
March 26, 1993
TIMOD(4M)