t_getinfo(3xti)t_getinfo(3xti)Namet_getinfo - get protocol-specific service information
Syntax
#include <xti.h>
int t_getinfo(fd, info)
int fd;
struct t_info *info;
Arguments
fd Identifies the file descriptor that is associated with the
underlying transport protocol from which the current charac‐
teristics are to be returned.
info Specifies the structure that is used to return the same
information returned by Points to a t_info structure which
contains the following members:
long addr; /* max size of the transport protocol address
*/
long options; /* max number of bytes of protocol-specific
options */
long tsdu; /* max size of a transport service data unit
(TSDU) */
long etsdu; /* max size of an expedited transport service
data unit (ETSDU) */
long connect; /* max amount of data allowed on connection
establishment functions */
long discon; /* max amount of data allowed on and functions
*/
long servtype; /* service type supported by the transport
provider */
The values of the fields have the following meanings:
addr A value greater than or equal to zero indicates
the maximum size of a transport protocol address;
a value of -1 specifies that there is no limit on
the address size; and a value of -2 specifies
that the transport provider does not provide user
access to transport protocol addresses.
options A value greater than or equal to zero indicates
the maximum number of bytes of protocol-specific
options supported by the provider; a value of -1
specifies that there is no limit on the option
size and a value of -2 specifies that the trans‐
port provider does not support user-settable
options.
tsdu A value greater than zero specifies the maximum
size of a transport service data unit (TSDU); a
value of zero specifies that the transport
provider does not support the concept of TSDU,
although it does support the sending of a data
stream with no logical boundaries preserved
across a connection; a value of -1 specifies that
there is no limit on the size of a TSDU and a
value of -2 specifies that the transfer of normal
data is not supported by the transport provider.
etsdu A value greater than zero specifies the maximum
size of an expedited transport service data unit
(ETSDU); a value of zero specifies that the
transport provider does not support the concept
of ETSDU, although it it does support the sending
of an expedited data stream with no logical
boundaries preserved across a connection; a value
of -1 specifies that there is no limit on the
size of ETSDU; and a value of -2 specifies that
the transfer of expedited data is not supported
by the transport provider.
connect A value greater than or equal to zero specifies
the maximum amount of data that may be associated
with connection establishment functions; a value
of -1 specifies that there is no limit on the
amount of data sent during connection establish‐
ment; and a value of -2 specifies that the trans‐
port provider does not allow data to be sent with
connection establishment functions.
discon A value greater than or equal to zero specifies
the maximum amount of data that may be associated
with the and functions; a value -1 specifies that
there is no limit on the amount of data sent with
these abortive release functions; and a value of
-2 specifies that the transport provider does not
allow data to be sent with the abortive release
functions.
servtype This field specifies the service type supported
by the transport provider, as described.
If a transport user is concerned with protocol independence,
the sizes may be accessed to determine how large the buffers
must be to hold each piece of information. Alternatively, the
function can be used to allocate these buffers. An error
results if a transport user exceeds the allowed data size on
any function. The value of each field may change as a result
of option negotiation, and enables a user to retrieve the
current characteristics of the underlying transport protocol.
The servtype field of info specifies one of the following
values on return:
T_COTS The transport provider supports a connection-mode
service but does not support the optional orderly
release facility.
T_COTS_ORD The transport provider supports a connection-mode
service with the optional orderly release facil‐
ity.
T_CLTS The transport provider supports a connectionless-
mode service. For this service type, returns -2
for ETSDU, and
Description
This function returns the current characteristics of the underlying
transport protocol associated with file descriptor fd. The info struc‐
ture is used to return the same information returned by This function
enables a transport user to access this information during any phase of
communications.
─────────────────────────────────────────
Parameters Before Call After Call
─────────────────────────────────────────
fd x /
info->addr / x
info->options / x
info->tsdu / x
info->etsdu / x
info->connect / x
info->discon / x
info->sertype / x
─────────────────────────────────────────
Return Values
Upon successful completion, a value of 0 is returned. On failure, a
value of -1 is returned, and t_errno is set to indicate the error.
Diagnostics
On failure, t_errno is set to one of the following:
[TBADF] The specified file descriptor does not refer to a
transport endpoint.
[TNOTSUPPORT] This function is not supported by the current
implementation of XTI.
[TSYSERR] A system error has occurred during execution of
this function.
See Alsot_alloc(3xti), t_open(3xti)t_getinfo(3xti)