summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/lldp/lldp.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/lib/lldp/lldp.c b/lib/lldp/lldp.c
index e5755307f..18afbab9a 100644
--- a/lib/lldp/lldp.c
+++ b/lib/lldp/lldp.c
@@ -513,10 +513,13 @@ lldp_decode(struct lldpd *cfg OVS_UNUSED, char *frame, int s,
b = xzalloc(tlv_size + 1);
PEEK_BYTES(b, tlv_size);
if (tlv_type == LLDP_TLV_PORT_DESCR) {
+ free(port->p_descr);
port->p_descr = b;
} else if (tlv_type == LLDP_TLV_SYSTEM_NAME) {
+ free(chassis->c_name);
chassis->c_name = b;
} else {
+ free(chassis->c_descr);
chassis->c_descr = b;
}
break;