]> git.proxmox.com Git - mirror_frr.git/commitdiff
isisd: Fix leaked memory in error case
authorDonald Sharp <sharpd@cumulusnetworks.com>
Sat, 7 Oct 2017 12:53:35 +0000 (08:53 -0400)
committerDonald Sharp <sharpd@cumulusnetworks.com>
Tue, 10 Oct 2017 16:27:17 +0000 (12:27 -0400)
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
isisd/isis_pdu.c

index be989cbabb170db9c553970a897db8b98e0bbfbe..9c68fe5966090b611bb140d2cf391fa2eed7d1e9 100644 (file)
@@ -1546,8 +1546,11 @@ int send_hello(struct isis_circuit *circuit, int level)
 
        isis_tlvs_add_auth(tlvs, &circuit->passwd);
 
-       if (!listcount(circuit->area->area_addrs))
+       if (!listcount(circuit->area->area_addrs)) {
+               isis_free_tlvs(tlvs);
                return ISIS_WARNING;
+       }
+
        isis_tlvs_add_area_addresses(tlvs, circuit->area->area_addrs);
 
        if (circuit->circ_type == CIRCUIT_T_BROADCAST)