From 972d2eee3a3518f18e0958e6f8a1b2ffafd6d39a Mon Sep 17 00:00:00 2001 From: Jakob Kaivo Date: Thu, 29 Oct 2020 15:57:00 -0400 Subject: outline stuff from arpa/inet.h --- src/arpa/inet/inet_ntop.c | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 src/arpa/inet/inet_ntop.c (limited to 'src/arpa/inet/inet_ntop.c') diff --git a/src/arpa/inet/inet_ntop.c b/src/arpa/inet/inet_ntop.c new file mode 100644 index 00000000..0a89cedf --- /dev/null +++ b/src/arpa/inet/inet_ntop.c @@ -0,0 +1,34 @@ +#include +#include +#include +#include + +const char *inet_ntop(int af, const void *restrict src, char *restrict dst, socklen_t size) +{ + if (af == AF_INET) { + in_addr_t *a = src; + char s[INET_ADDRSTRLEN] = ""; + if (snprintf(s, sizeof(s), "%hhu.%hhu.%hhu.%hhu", + (*src >> 24) & 0xff, + (*src >> 16) & 0xff, + (*src >> 8) & 0xff, + (*src) & 0xff) > size) { + errno = ENOSPC; + return NULL; + } + strcpy(dst, s); + return dst; + } + + if (af != AF_INET6) { + errno = EAFNOSUPPORT; + return NULL; + } + + /* + char s[INET6_ADDRSTRLEN] = ""; + unsigned char *a = src; + */ + /* do IPv6 conversion */ + return dst; +} -- cgit v1.2.1