From e9082d96468f7a6542b8e473eb90f3ed7e27dbbf Mon Sep 17 00:00:00 2001 From: Matt Mundell Date: Mon, 3 Jun 2024 12:50:28 +0200 Subject: [PATCH 1/5] Free permission_or GString before replacing it --- src/manage_acl.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/manage_acl.c b/src/manage_acl.c index 18996e780..e2953d8f1 100644 --- a/src/manage_acl.c +++ b/src/manage_acl.c @@ -1078,6 +1078,7 @@ acl_where_owned_user (const char *user_id, const char *user_sql, if (permissions == NULL || permissions->len == 0) { /* Treat filters with no permissions keyword as "any". */ + g_string_free (permission_or, TRUE); permission_or = g_string_new ("t ()"); index = 1; } From 0234c1ef4344cd77605c54945c6c3e22d776008b Mon Sep 17 00:00:00 2001 From: Matt Mundell Date: Mon, 3 Jun 2024 13:21:47 +0200 Subject: [PATCH 2/5] Free the new enckey_uid field in lsc_crypt_release --- src/lsc_crypt.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/lsc_crypt.c b/src/lsc_crypt.c index d4e1a0b8a..e64adad0b 100644 --- a/src/lsc_crypt.c +++ b/src/lsc_crypt.c @@ -581,6 +581,7 @@ lsc_crypt_release (lsc_crypt_ctx_t ctx) lsc_crypt_flush (ctx); if (ctx->encctx) /* Check required for gpgme < 1.3.1 */ gpgme_release (ctx->encctx); + g_free (ctx->enckey_uid); g_free (ctx); } From 771bda128e1d0a0c3af5731d29e7eb20b07fa587 Mon Sep 17 00:00:00 2001 From: Matt Mundell Date: Mon, 3 Jun 2024 14:17:00 +0200 Subject: [PATCH 3/5] Close dirs after use --- src/manage_configs.c | 6 +++++- src/manage_port_lists.c | 6 +++++- src/manage_report_formats.c | 6 +++++- 3 files changed, 15 insertions(+), 3 deletions(-) diff --git a/src/manage_configs.c b/src/manage_configs.c index e88f7b023..d7de250af 100644 --- a/src/manage_configs.c +++ b/src/manage_configs.c @@ -620,7 +620,11 @@ should_sync_configs () && strlen (config_path) >= (36 /* UUID */ + strlen (".xml")) && g_str_has_suffix (config_path, ".xml") && should_sync_config_from_path (config_path, FALSE, &config)) - return TRUE; + { + g_dir_close (dir); + return TRUE; + } + g_dir_close (dir); return FALSE; } diff --git a/src/manage_port_lists.c b/src/manage_port_lists.c index 39f2d1775..26f7c8cc5 100644 --- a/src/manage_port_lists.c +++ b/src/manage_port_lists.c @@ -537,7 +537,11 @@ should_sync_port_lists () && strlen (port_list_path) >= (36 /* UUID */ + strlen (".xml")) && g_str_has_suffix (port_list_path, ".xml") && should_sync_port_list_from_path (port_list_path, FALSE, &port_list)) - return TRUE; + { + g_dir_close (dir); + return TRUE; + } + g_dir_close (dir); return FALSE; } diff --git a/src/manage_report_formats.c b/src/manage_report_formats.c index efc471633..8cc94feb0 100644 --- a/src/manage_report_formats.c +++ b/src/manage_report_formats.c @@ -905,7 +905,11 @@ should_sync_report_formats () && should_sync_report_format_from_path (report_format_path, FALSE, &report_format)) - return TRUE; + { + g_dir_close (dir); + return TRUE; + } + g_dir_close (dir); return FALSE; } From 7b832d49c4cd38c145a88f317c6ebc88bec800ff Mon Sep 17 00:00:00 2001 From: Matt Mundell Date: Mon, 3 Jun 2024 14:45:22 +0200 Subject: [PATCH 4/5] Always free in nvts_feed_version_status_internal --- src/manage_sql_nvts.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/manage_sql_nvts.c b/src/manage_sql_nvts.c index bad45d9bf..ccebce74f 100644 --- a/src/manage_sql_nvts.c +++ b/src/manage_sql_nvts.c @@ -2462,8 +2462,10 @@ nvts_feed_version_status_internal (const gchar *update_socket, scanner_feed_version = osp_scanner_feed_version (update_socket); g_debug ("%s: scanner_feed_version: %s", __func__, scanner_feed_version); - if (scanner_feed_version == NULL) + if (scanner_feed_version == NULL) { + g_free (db_feed_version); return -1; + } if (scanner_feed_version_out && scanner_feed_version) *scanner_feed_version_out = g_strdup (scanner_feed_version); @@ -2475,6 +2477,8 @@ nvts_feed_version_status_internal (const gchar *update_socket, return 1; } + g_free (db_feed_version); + g_free (scanner_feed_version); return 0; } From f71bba790aa3b27332e07338bae424a66e1d525e Mon Sep 17 00:00:00 2001 From: Matt Mundell Date: Mon, 3 Jun 2024 15:24:41 +0200 Subject: [PATCH 5/5] Free all task preference values in handle_get_tasks --- src/gmp.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/gmp.c b/src/gmp.c index 11dfcd8a6..52507e406 100644 --- a/src/gmp.c +++ b/src/gmp.c @@ -18556,9 +18556,13 @@ handle_get_tasks (gmp_parser_t *gmp_parser, GError **error) auto_delete ? auto_delete : "0", auto_delete_data ? auto_delete_data : "0"); + g_free (assets_apply_overrides); + g_free (assets_min_qod); g_free (in_assets); g_free (max_checks); g_free (max_hosts); + g_free (auto_delete); + g_free (auto_delete_data); } count++;