sock_get_port.c 369 B

123456789101112131415161718192021222324
  1. #include "unp.h"
  2. int
  3. sock_get_port(const struct sockaddr *sa, socklen_t salen)
  4. {
  5. switch (sa->sa_family) {
  6. case AF_INET: {
  7. struct sockaddr_in *sin = (struct sockaddr_in *) sa;
  8. return(sin->sin_port);
  9. }
  10. #ifdef IPV6
  11. case AF_INET6: {
  12. struct sockaddr_in6 *sin6 = (struct sockaddr_in6 *) sa;
  13. return(sin6->sin6_port);
  14. }
  15. #endif
  16. }
  17. return(-1); /* ??? */
  18. }