sctp_print_addrs.c 589 B

1234567891011121314151617181920212223242526272829303132
  1. #include "unp.h"
  2. void
  3. sctp_print_addresses(struct sockaddr_storage *addrs, int num)
  4. {
  5. struct sockaddr_storage *ss;
  6. int i,salen;
  7. ss = addrs;
  8. for(i=0; i<num; i++){
  9. printf("%s\n", Sock_ntop((SA *)ss, salen));
  10. #ifdef HAVE_SOCKADDR_SA_LEN
  11. salen = ss->ss_len;
  12. #else
  13. switch(ss->ss_family) {
  14. case AF_INET:
  15. salen = sizeof(struct sockaddr_in);
  16. break;
  17. #ifdef IPV6
  18. case AF_INET6:
  19. salen = sizeof(struct sockaddr_in6);
  20. break;
  21. #endif
  22. default:
  23. err_quit("sctp_print_addresses: unknown AF");
  24. break;
  25. }
  26. #endif
  27. ss = (struct sockaddr_storage *)((char *)ss + salen);
  28. }
  29. }