]> git.ipfire.org Git - thirdparty/FORT-validator.git/commitdiff
Patch memory leaks
authorAlberto Leiva Popper <ydahhrk@gmail.com>
Mon, 4 May 2026 23:43:49 +0000 (17:43 -0600)
committerAlberto Leiva Popper <ydahhrk@gmail.com>
Mon, 4 May 2026 23:43:49 +0000 (17:43 -0600)
src/log.c
src/log.h
src/rtr/db/delta.c

index a67c0ca2e9afdba732f5e41c72c4e6dac9d5a105..925296ec403347ccb589a7dc10b815b5a772d4de 100644 (file)
--- a/src/log.c
+++ b/src/log.c
@@ -66,7 +66,7 @@ static pthread_mutex_t logck;
  * aware that pthread_mutex_lock() can return error codes, which shouldn't
  * prevent critical stack traces from printing.)
  */
-static void
+void
 print_stack_trace(char const *title)
 {
 #ifdef BACKTRACE_ENABLED
index 57b4b0fa4e6703fc7df99a33e2182b0ad9aa05c7..ae978308c88ed1d21ba12dc4e84ec8150d4f4524 100644 (file)
--- a/src/log.h
+++ b/src/log.h
@@ -101,6 +101,8 @@ __dead void enomem_panic(void);
 /* Programming errors */
 __dead void pr_crit(const char *, ...) CHECK_FORMAT(1, 2);
 
+void print_stack_trace(char const *);
+
 int incidence(enum incidence_id, const char *, ...) CHECK_FORMAT(2, 3);
 
 /*
index c5f96047e9aa7873a88498affa60a621da2b203c..d248b9265e0f6b259241f0d48bfe65d5052d12c7 100644 (file)
@@ -81,6 +81,12 @@ deltas_refget(struct deltas *deltas)
        atomic_fetch_add(&deltas->references, 1);
 }
 
+static void
+clean_aspa(struct _delta_aspa *da)
+{
+       aspa_refput(da->aspa);
+}
+
 void
 deltas_refput(struct deltas *deltas)
 {
@@ -95,8 +101,8 @@ deltas_refput(struct deltas *deltas)
                deltas_v6_cleanup(&deltas->v6.removes, NULL);
                deltas_rk_cleanup(&deltas->rk.adds, NULL);
                deltas_rk_cleanup(&deltas->rk.removes, NULL);
-               deltas_aspa_cleanup(&deltas->aspa.adds, NULL);
-               deltas_aspa_cleanup(&deltas->aspa.removes, NULL);
+               deltas_aspa_cleanup(&deltas->aspa.adds, clean_aspa);
+               deltas_aspa_cleanup(&deltas->aspa.removes, clean_aspa);
                free(deltas);
        }
 }