From ffb72dc42a4d65d3c6c932542a298facfc51bb8d Mon Sep 17 00:00:00 2001 From: "nevadita.chatterjee" <nevadita.chatterjee@iopsys.eu> Date: Thu, 4 May 2023 10:29:59 +0530 Subject: [PATCH] map-topology: Added check for max ipv6 address count --- src/host_utils.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/host_utils.c b/src/host_utils.c index 649be67..a6aa17a 100644 --- a/src/host_utils.c +++ b/src/host_utils.c @@ -272,7 +272,12 @@ int host_get_netlink_ip6(uint8_t *mac_addr, struct host_node *p) ret = memcmp(hwaddr, mac_addr, 6); if (ret == 0) { - strncpy(p->ipv6addr[p->ipv6addr_count], addr_str, 128); + if (p->ipv6addr_count >= HOST_MAX_IPV6ADDR) { + nl_object_put((struct nl_object *) neigh); + break; + } + memset(p->ipv6addr[p->ipv6addr_count], 0, 128); + strncpy(p->ipv6addr[p->ipv6addr_count], addr_str, 127); dbg("ipv6addr= [%s] mac=["MACFMT"]\n", p->ipv6addr[p->ipv6addr_count], MAC2STR(hwaddr)); p->ipv6addr_count = p->ipv6addr_count + 1; } -- GitLab