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;
}