summaryrefslogtreecommitdiff
path: root/lib/agentx.c
diff options
context:
space:
mode:
authorDonald Sharp <sharpd@nvidia.com>2024-08-09 14:50:59 -0400
committerDonald Sharp <sharpd@nvidia.com>2024-08-12 08:51:19 -0400
commitb8b38a593c40fbea5bbe799af930528bef8c20a4 (patch)
tree7db9b1006d88bf685a8ccbbd3402a66571140737 /lib/agentx.c
parentcc0fdd3b1d1b3554896fc03eec16379b7bae2b40 (diff)
lib: Fix memory leak in snmp on shutdown
The events list is storing a `struct event *` allocated as a MTYPE_TMP pointer, on shutdown ensure that it is properly free'd up. Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Diffstat (limited to 'lib/agentx.c')
-rw-r--r--lib/agentx.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/lib/agentx.c b/lib/agentx.c
index 2e621d06a4..2a3ff2355e 100644
--- a/lib/agentx.c
+++ b/lib/agentx.c
@@ -377,9 +377,16 @@ void smux_events_update(void)
agentx_events_update();
}
+static void smux_events_delete_thread(void *arg)
+{
+ XFREE(MTYPE_TMP, arg);
+}
+
void smux_terminate(void)
{
- if (events)
+ if (events) {
+ events->del = smux_events_delete_thread;
list_delete(&events);
+ }
}
#endif /* SNMP_AGENTX */