Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

sctp_bindx(3socket) [opensolaris man page]

sctp_bindx(3SOCKET)					     Sockets Library Functions					       sctp_bindx(3SOCKET)

NAME
sctp_bindx - add or remove IP addresses to or from an SCTP socket SYNOPSIS
cc [ flag... ] file... -lsocket -lnsl -lsctp [ library... ] #include <sys/types.h> #include <sys/socket.h> #include <netinet/sctp.h> int sctp_bindx(int sock, void *addrs, int addrcnt, int flags); DESCRIPTION
The sctp_bindx() 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 sockaddr_in structures containing IPv4 addresses. If sock is an Internet Protocol Version 6 (IPv6) socket, addrs should be an array of sockaddr_in6 structures containing IPv6 or IPv4-mapped IPv6 addresses. The addrcnt is the number of array ele- ments 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: SCTP_BINDX_ADD_ADDR Indicates that addresses from addrs should be added to the SCTP socket. SCTP_BINDX_REM_ADDR 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 SCTP_BINDX_ADD_ADDR and SCTP_BINDX_REM_ADDR, the sctp_bindx() function will fail. Prior to calling sctp_bindx() on an SCTP endpoint, the endpoint should be bound using bind(3SOCKET). On a listening socket, a special INADDR_ANY 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 sys- tem to the socket. The sctp_bindx() function can also be used to add or remove addresses to or from an established association. In such a case, messages are exchanged between the SCTP endpoints to update the address lists for that association if both endpoints support dynamic address reconfiguration. RETURN VALUES
Upon successful completion, the sctp_bindx() function returns 0. Otherwise, the function returns -1 and sets errno to indicate the error. ERRORS
The sctp_bindx() 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. ATTRIBUTES
See attributes(5) for descriptions of the following attributes: +-----------------------------+-----------------------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |Interface Stability |Committed | +-----------------------------+-----------------------------+ |MT-Level |Safe | +-----------------------------+-----------------------------+ SEE ALSO
bind(3SOCKET), in.h(3HEAD), libsctp(3LIB), listen(3SOCKET), sctp_freeladdrs(3SOCKET), sctp_freepaddrs(3SOCKET), sctp_getladdrs(3SOCKET), sctp_getpaddrs(3SOCKET), socket(3SOCKET), inet(7P), inet6(7P), ip(7P), ip6(7P), sctp(7P) NOTES
IPv4-mapped addresses are not recommended. SunOS 5.11 22 Aug 2007 sctp_bindx(3SOCKET)

Check Out this Related Man Page

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 allo- cated 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(5) for descriptions of the following attributes: +-----------------------------+-----------------------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |Interface Stability |Evolving | +-----------------------------+-----------------------------+ |MT-Level |Safe | +-----------------------------+-----------------------------+ SEE ALSO
bind(3SOCKET), in.h(3HEAD), libsctp(3LIB), sctp_freeladdrs(3SOCKET), sctp_getladdrs(3SOCKET), socket(3SOCKET), inet(7P), inet6(7P), ip(7P), ip6(7P)sctp(7P) SunOS 5.10 26 Feb 2004 sctp_getpaddrs(3SOCKET)
Man Page