Skip to content

Instantly share code, notes, and snippets.

@grisu48
Forked from jkomyno/sockaddr_tostr.h
Created November 5, 2019 11:02
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save grisu48/86ee5b36740b5b18422a03fa89899440 to your computer and use it in GitHub Desktop.
Save grisu48/86ee5b36740b5b18422a03fa89899440 to your computer and use it in GitHub Desktop.
Convert a struct sockaddr address to a string, IPv4 and IPv6
// Convert a struct sockaddr address to a string, IPv4 and IPv6:
char *get_ip_str(const struct sockaddr *sa, char *s, size_t maxlen)
{
switch(sa->sa_family) {
case AF_INET:
inet_ntop(AF_INET, &(((struct sockaddr_in *)sa)->sin_addr),
s, maxlen);
break;
case AF_INET6:
inet_ntop(AF_INET6, &(((struct sockaddr_in6 *)sa)->sin6_addr),
s, maxlen);
break;
default:
strncpy(s, "Unknown AF", maxlen);
return NULL;
}
return s;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment