Provided by: libsctp-dev_1.0.16+dfsg-3_amd64 bug


       sctp_getladdrs - Returns all locally bound addresses on a socket.


       #include <sys/types.h>
       #include <sys/socket.h>
       #include <netinet/sctp.h>

       int sctp_getladdrs(int sd, sctp_assoc_t assoc_id,
                          struct sockaddr **addrs);

       void sctp_freeladdrs(struct sockaddr *addrs);


       sctp_getladdrs  returns  all  locally  bound  addresses on a socket. On return, addrs will
       point to a dynamically allocated packed array of sockaddr structures  of  the  appropriate
       type  for  each  local  address. The caller should use sctp_freeladdrs to free the memory.
       Note that the in/out parameter addrs must not be NULL.

       If sd is an IPv4 socket, the addresses returned will be all IPv4 addresses. If  sd  is  an
       IPv6 socket, the addresses returned can be a mix of IPv4 or IPv6 addresses.

       For one-to-many style sockets, id specifies the association to query. For one-to-one style
       sockets, id is ignored.

       If the id field is set to 0, then the locally bound addresses are returned without  regard
       to any particular association.

       sctp_freeladdrs frees all the resources allocated by sctp_getladdrs


       On  success,  sctp_getladdrs returns the number of local addresses bound to the socket. If
       the socket is unbound, 0 is returned and the value  of  *addrs  is  undefined.  On  error,
       sctp_getladdrs returns -1 and the value of *addrs is undefined.


       sctp(7)  sctp_bindx(3),  sctp_connectx(3), sctp_sendmsg(3), sctp_send(3), sctp_recvmsg(3),
       sctp_peeloff(3), sctp_getpaddrs(3), sctp_opt_info(3),