From 4c9d4fbe8de3f0cc9904bb2cea4efd4fb166ea0d Mon Sep 17 00:00:00 2001 From: patrick96 Date: Sat, 17 Nov 2018 14:31:28 +0100 Subject: [PATCH] fix(net): buffer overflow when gathering ipv6 addr --- src/adapters/net.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/adapters/net.cpp b/src/adapters/net.cpp index 05f30320..fed21566 100644 --- a/src/adapters/net.cpp +++ b/src/adapters/net.cpp @@ -84,7 +84,7 @@ namespace net { break; case AF_INET6: - char ip6_buffer[INET_ADDRSTRLEN]; + char ip6_buffer[INET6_ADDRSTRLEN]; sa6 = reinterpret_cast(ifa->ifa_addr); if (IN6_IS_ADDR_LINKLOCAL(&sa6->sin6_addr)) { continue; @@ -96,7 +96,7 @@ namespace net { /* Skip Unique Local Addresses (fc00::/7) */ continue; } - if (inet_ntop(AF_INET6, &sa6->sin6_addr, ip6_buffer, NI_MAXHOST) == 0) { + if (inet_ntop(AF_INET6, &sa6->sin6_addr, ip6_buffer, INET6_ADDRSTRLEN) == 0) { m_log.warn("inet_ntop() " + string(strerror(errno))); continue; }