#endif
free(port->p_id);
free(port->p_descr);
- free(port);
+ /* Don't free port, we may use this function on statically
+ allocated ports */
}
void
{
if (hardware->h_rport != NULL) {
lldpd_port_cleanup(hardware->h_rport);
+ free(hardware->h_rport);
hardware->h_rport = NULL;
}
if (hardware->h_rchassis != NULL) {
#ifdef ENABLE_DOT1
lldpd_vlan_cleanup(&hardware->h_lport);
#endif
+ lldpd_port_cleanup(&hardware->h_lport);
free(hardware->h_proto_macs);
free(hardware->h_llastframe);
free(hardware);
cleanup:
lldpd_chassis_cleanup(chassis);
lldpd_port_cleanup(port);
+ free(port);
return;
}