28 lines
1.0 KiB
Diff
28 lines
1.0 KiB
Diff
From 55ad9d1d701e644ed5b8821456e31acf2e72920c Mon Sep 17 00:00:00 2001
|
|
From: Gabriel Ganne <gabriel.ganne@gmail.com>
|
|
Date: Sun, 28 Jan 2024 10:02:30 +0100
|
|
Subject: [PATCH] allow recursice call to tcpedit_dlt_cleanup()
|
|
|
|
This is just a quick hack to prevent a double-free should
|
|
tcpedit_dlt_cleanup() call itself, which can hapen through dlt_jnpr_ether_cleanup()
|
|
|
|
Ref: #813
|
|
---
|
|
src/tcpedit/plugins/dlt_jnpr_ether/jnpr_ether.c | 4 +++-
|
|
1 file changed, 3 insertions(+), 1 deletion(-)
|
|
|
|
--- a/src/tcpedit/plugins/dlt_jnpr_ether/jnpr_ether.c
|
|
+++ b/src/tcpedit/plugins/dlt_jnpr_ether/jnpr_ether.c
|
|
@@ -164,8 +164,10 @@ dlt_jnpr_ether_cleanup(tcpeditdlt_t *ctx
|
|
jnpr_ether_config_t *config;
|
|
|
|
config = (jnpr_ether_config_t *)ctx->encoder->config;
|
|
- if (config->subctx != NULL)
|
|
+ if (config->subctx != NULL) {
|
|
+ ctx->decoded_extra = NULL;
|
|
tcpedit_dlt_cleanup(config->subctx);
|
|
+ }
|
|
safe_free(plugin->config);
|
|
plugin->config = NULL;
|
|
plugin->config_size = 0;
|