]> git.proxmox.com Git - mirror_frr.git/commitdiff
isisd: Free up some memory allocated.
authorDonald Sharp <sharpd@cumulusnetworks.com>
Sat, 10 Feb 2018 19:03:09 +0000 (14:03 -0500)
committerRafael Zalamena <rzalamena@opensourcerouting.org>
Wed, 14 Feb 2018 14:12:54 +0000 (12:12 -0200)
The v4 and v6 prefixes were created but not deleted on
shutdown properly.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
(cherry picked from commit 25b1001dc9c46bbfcb9e1af8231e0fa63a7d3bd3)
Signed-off-by: Rafael Zalamena <rzalamena@opensourcerouting.org>
isisd/isis_circuit.c

index 95e02f86919dcadd181b476602c592b2d7bdb3c2..98087942a670bcddfb03d8462da30cb3c59f4955 100644 (file)
@@ -293,6 +293,7 @@ void isis_circuit_del_addr(struct isis_circuit *circuit,
 
                if (ip) {
                        listnode_delete(circuit->ip_addrs, ip);
+                       prefix_ipv4_free(ip);
                        if (circuit->area)
                                lsp_regenerate_schedule(circuit->area,
                                                        circuit->is_type, 0);
@@ -328,6 +329,7 @@ void isis_circuit_del_addr(struct isis_circuit *circuit,
                        }
                        if (ip6) {
                                listnode_delete(circuit->ipv6_link, ip6);
+                               prefix_ipv6_free(ip6);
                                found = 1;
                        }
                } else {
@@ -339,6 +341,7 @@ void isis_circuit_del_addr(struct isis_circuit *circuit,
                        }
                        if (ip6) {
                                listnode_delete(circuit->ipv6_non_link, ip6);
+                               prefix_ipv6_free(ip6);
                                found = 1;
                        }
                }