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)

tribblix@gmail.com :: GitHub :: Privacy