Commit 146619b42 for clamav.net

commit 146619b42548c7bce8e8e030c9781e19de3b91a5
Author: qxp930712 <155530647+qxp930712@users.noreply.github.com>
Date:   Tue Aug 18 08:11:57 2026 +0800

    libfreshclam: fix use-after-free in fc_cleanup on init failure (#1801)

    fc_cleanup() frees g_signVerifier but does not set it to NULL.
    When fc_initialize() fails, fc_cleanup() is called internally
    and then again by freshclam at exit, causing a double free
    that results in a segmentation fault.

    Set g_signVerifier to NULL after freeing it, matching the
    pattern used by other pointers in fc_cleanup().

    Triggered when freshclam cannot write to the database directory.

    Co-authored-by: caimengci <caimengci@uniontech.com>

diff --git a/libfreshclam/libfreshclam.c b/libfreshclam/libfreshclam.c
index cba2bf5ae..467fc4bc8 100644
--- a/libfreshclam/libfreshclam.c
+++ b/libfreshclam/libfreshclam.c
@@ -353,6 +353,7 @@ void fc_cleanup(void)
     }
     if (NULL != g_signVerifier) {
         codesign_verifier_free(g_signVerifier);
+        g_signVerifier = NULL;
     }
 }