Properly free the string pointed to by `pbrms->nhgrp_name`
when we are removiing the config for a nexthop group
on a pbr map sequence.
Found via memleak:
==
3152214== 4 bytes in 1 blocks are definitely lost in loss record 308 of 8,814
==
3152214== at 0x483980B: malloc (vg_replace_malloc.c:309)
==
3152214== by 0x4DC9F7E: strdup (in /usr/lib64/libc-2.30.so)
==
3152214== by 0x48E373E: qstrdup (memory.c:122)
==
3152214== by 0x408FE7: pbr_map_nexthop_group_magic (pbr_vty.c:264)
==
3152214== by 0x408E04: pbr_map_nexthop_group (pbr_vty_clippy.c:347)
==
3152214== by 0x48ACF72: cmd_execute_command_real (command.c:1073)
==
3152214== by 0x48ACB3B: cmd_execute_command (command.c:1133)
==
3152214== by 0x48AD063: cmd_execute (command.c:1288)
==
3152214== by 0x493D8EE: vty_command (vty.c:526)
==
3152214== by 0x493D397: vty_execute (vty.c:1293)
==
3152214== by 0x493C4EC: vtysh_read (vty.c:2126)
==
3152214== by 0x49319DC: thread_call (thread.c:1548)
Signed-off-by: Stephen Worley <sworley@cumulusnetworks.com>
pbrm->valid = false;
pbrms->nhs_installed = false;
pbrms->reason |= PBR_MAP_INVALID_NO_NEXTHOPS;
- pbrms->nhgrp_name = NULL;
+ XFREE(MTYPE_TMP, pbrms->nhgrp_name);
}
void pbr_map_delete_nexthops(struct pbr_map_sequence *pbrms)