SCTP_GETPADDRS(3SOCKET) Sockets Library Functions SCTP_GETPADDRS(3SOCKET)
NAME
sctp_getpaddrs, sctp_freepaddrs - returns all peer addresses on an
SCTP association
SYNOPSIS
cc [
flag... ]
file...
-lsocket -lnsl -lsctp [
library... ]
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/sctp.h>
int sctp_getpaddrs(
int sock,
sctp_assoc_t id,
void **addrs);
void sctp_freepaddrs(
void *addrs);
DESCRIPTION
The
sctp_getpaddrs() queries the peer addresses in an SCTP
association. The
sctp_freepaddrs() function releases resources that
are allocated to hold the addresses.
The
sctp_getpaddrs() function returns all the peer addresses in the
SCTP association identified by
sock. On completion
addrs points to a
dynamically allocated array of
sockaddr_in structures for an Internet
Protocol (IPv4) socket or an array of
sockaddr_in6 structures for an
Internet Protocol Version 6 (IPv6) socket. The
addrs parameter must
not be
NULL. For an IPv4 SCTP socket, the addresses returned in the
sockaddr_in structures are IPv4 addresses. For an IPv6 SCTP socket,
the addresses in the
sockaddr_in6 structures can be IPv6 addresses or
IPv4-mapped IPv6 addresses.
If
sock is a one-to-many style SCTP socket,
id specifies the
association of interest. If
sock is a one-to-one style SCTP socket,
id is ignored.
The
sctp_freepaddrs() function frees the resources allocated by
sctp_getpaddrs(). The
addrs parameter is the array of addresses
allocated by
sctp_getpaddrs().
RETURN VALUES
Upon successful completion, the
sctp_getpaddrs() function returns the
number of addresses in the
addrs array. Otherwise, the function
returns
-1 and sets
errno to indicate the error.
ERRORS
The
sctp_getpaddrs() succeeds unless one of the following conditions
exist.
EBADF The
sock argument is an invalid file descriptor.
ENOTSOCK The
sock argument is not a socket.
EINVAL The
addrs argument is
NULL.
EINVAL The
id argument is an invalid association identifier for
a one-to-many style STP socket.
ENOTCONN The specified socket is not connected.
ATTRIBUTES
See
attributes(7) for descriptions of the following attributes:
+--------------------+-----------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+--------------------+-----------------+
|Interface Stability | Committed |
+--------------------+-----------------+
|MT-Level | Safe |
+--------------------+-----------------+
SEE ALSO
in.h(3HEAD),
libsctp(3LIB),
bind(3SOCKET),
sctp_freeladdrs(3SOCKET),
sctp_getladdrs(3SOCKET),
sockaddr(3SOCKET),
socket(3SOCKET),
inet(4P),
inet6(4P),
ip(4P),
ip6(4P),
sctp(4P),
attributes(7) January 23, 2008 SCTP_GETPADDRS(3SOCKET)