Sockets Library Functions sctpbindx(3SOCKET)
NAME
sctpbindx - add or remove IP addresses to or from an SCTP
socket
SYNOPSIS
cc [ flag... ] file... -lsocket -lnsl -lsctp [ library... ]
#include
#include
#include
int sctpbindx(int sock, void *addrs, int addrcnt, int flags);
DESCRIPTION
The sctpbindx() function adds or removes addresses to or
from an SCTP socket. If sock is an Internet Protocol Version
4 (IPv4) socket, addrs should be an array of sockaddrin
structures containing IPv4 addresses. If sock is an Internet
Protocol Version 6 (IPv6) socket, addrs should be an array
of sockaddrin6 structures containing IPv6 or IPv4-mapped
IPv6 addresses. The addrcnt is the number of array elements
in addrs. The family of the address type is used with
addrcnt to determine the size of the array.
The flags parameter is a bitmask that indicates whether
addresses are to be added or removed from a socket. The
flags parameter is formed by bitwise OR of zero or more of
the following flags:
SCTPBINDXADADR Indicates that addresses from addrs
should be added to the SCTP socket.
SCTPBINDXREMADR Indicates that addresses from addrs
should be removed from the SCTP
socket.
These two flags are mutually exclusive. If flags is formed
by a bitwise OR of both SCTPBINDXADADR and
SCTPBINDXREMADR, the sctpbindx() function will fail.
Prior to calling sctpbindx() on an SCTP endpoint, the end-
point should be bound using bind(3SOCKET). On a listening
socket, a special INADRANY value for IP or an unspecified
address of all zeros for IPv6 can be used in addrs to add
all IPv4 or IPv6 addresses on the system to the socket. The
sctpbindx() function can also be used to add or remove
addresses to or from an established association. In such a
SunOS 5.11 Last change: 22 Aug 2007 1
Sockets Library Functions sctpbindx(3SOCKET)
case, messages are exchanged between the SCTP endpoints to
update the address lists for that association if both end-
points support dynamic address reconfiguration.
RETURN VALUES
Upon successful completion, the sctpbindx() function
returns 0. Otherwise, the function returns -1 and sets errno
to indicate the error.
ERORS
The sctpbindx() call fails under the following conditions.
EBADF The sock argument is an invalid file descriptor.
ENOTSOCK The sock argument is not a socket.
EINVAL One or more of the IPv4 or IPv6 addresses is
invalid.
EINVAL The endpoint is not bound.
EINVAL The last address is requested to be removed from
an established association.
ATRIBUTES
See attributes(5) for descriptions of the following attri-
butes:
ATRIBUTE TYPE ATRIBUTE VALUE
Interface Stability Committed
MT-Level Safe
SEE ALSO
bind(3SOCKET), in.h(3HEAD), libsctp(3LIB), listen(3SOCKET),
sctpfreeladdrs(3SOCKET), sctpfreepaddrs(3SOCKET),
sctpgetladdrs(3SOCKET), sctpgetpaddrs(3SOCKET),
socket(3SOCKET), inet(7P), inet6(7P), ip(7P), ip6(7P),
sctp(7P)
SunOS 5.11 Last change: 22 Aug 2007 2
Sockets Library Functions sctpbindx(3SOCKET)
NOTES
IPv4-mapped addresses are not recommended.
SunOS 5.11 Last change: 22 Aug 2007 3
|