SCTP_GETPADDRS(3SOCKET)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 sock‐
addr_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 associa‐
tion 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 allo‐
cated 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(5) for descriptions of the following attributes:
┌────────────────────┬─────────────────┐
│ ATTRIBUTE TYPE │ ATTRIBUTE VALUE │
├────────────────────┼─────────────────┤
│Interface Stability │ Committed │
├────────────────────┼─────────────────┤
│MT-Level │ Safe │
└────────────────────┴─────────────────┘
SEE ALSObind(3SOCKET), in.h(3HEAD), libsctp(3LIB), sctp_freeladdrs(3SOCKET),
sctp_getladdrs(3SOCKET), socket(3SOCKET), attributes(5), inet(7P),
inet6(7P), ip(7P), ip6(7P), sctp(7P)
Jan 23, 2008 SCTP_GETPADDRS(3SOCKET)