T_GETPROTADDR(3NSL) Networking Services Library Functions
NAME
t_getprotaddr - get the protocol addresses
SYNOPSIS
#include <xti.h>
int t_getprotaddr(
int fd,
struct t_bind *boundaddr,
struct t_bind *peeraddr);
DESCRIPTION
This routine is part of the
XTI interfaces which evolved from the
TLI interfaces.
XTI represents the future evolution of these interfaces.
However,
TLI interfaces are supported for compatibility. When using a
TLI routine that has the same name as an
XTI routine, the
tiuser.h header file must be used. Refer to the
TLI COMPATIBILITY section
for a description of differences between the two interfaces.
The
t_getprotaddr() function returns local and remote protocol
addresses currently associated with the transport endpoint specified
by
fd. In
boundaddr and
peeraddr the user specifies
maxlen, which is
the maximum size (in bytes) of the address buffer, and
buf which
points to the buffer where the address is to be placed. On return,
the
buf field of
boundaddr points to the address, if any, currently
bound to
fd, and the
len field specifies the length of the address.
If the transport endpoint is in the
T_UNBND state, zero is returned
in the
len field of
boundaddr. The
buf field of
peeraddr points to
the address, if any, currently connected to
fd, and the
len field
specifies the length of the address. If the transport endpoint is not
in the
T_DATAXFER, T_INREL, T_OUTCON or
T_OUTREL states, zero is
returned in the
len field of
peeraddr. If the
maxlen field of
boundaddr or
peeraddr is set to zero, no address is returned.
RETURN VALUES
Upon successful completion, a value of
0 is returned. Otherwise, a
value of -1 is returned and
t_errno is set to indicate the error.
VALID STATES
ALL - apart from
T_UNINIT.
ERRORS
On failure,
t_errno is set to one of the following:
TBADF The specified file descriptor does not refer to a
transport endpoint.
TBUFOVFLW The number of bytes allocated for an incoming argument
(
maxlen) is greater than
0 but not sufficient to store
the value of that argument.
TPROTO This error indicates that a communication problem has
been detected between XTI and the transport provider for
which there is no other suitable XTI error
(t_errno).
TSYSERR A system error has occurred during execution of this
function.
TLI COMPATIBILITY
In the
TLI interface definition, no counterpart of this routine was
defined.
ATTRIBUTES
See
attributes(7) for descriptions of the following attributes:
+---------------+-----------------+
|ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+---------------+-----------------+
|MT Level | Safe |
+---------------+-----------------+
SEE ALSO
t_bind(3NSL),
attributes(7) May 7, 1998 T_GETPROTADDR(3NSL)