From e9acfbd43a2aec3b9cef2e8c52bb3ad7885b7526 Mon Sep 17 00:00:00 2001 From: Aram Sargsyan Date: Fri, 27 Jan 2023 08:47:52 +0000 Subject: [PATCH] catz: unregister the db update-notify callback before detaching from db When detaching from the previous version of the database, make sure that the update-notify callback is unregistered, otherwise there is an INSIST check which can generate an assertion failure in free_rbtdb(), which checks that there are no outstanding update listeners in the list. There is a similar code already in place for RPZ. (cherry picked from commit cf79692a662b627d2230fbf7ae67f55cf729180c) --- lib/dns/catz.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/lib/dns/catz.c b/lib/dns/catz.c index f51c42b00e..fa5c45f70f 100644 --- a/lib/dns/catz.c +++ b/lib/dns/catz.c @@ -2093,6 +2093,8 @@ dns_catz_dbupdate_callback(dns_db_t *db, void *fn_arg) { if (catz->dbversion != NULL) { dns_db_closeversion(catz->db, &catz->dbversion, false); } + dns_db_updatenotify_unregister( + catz->db, dns_catz_dbupdate_callback, catz->catzs); dns_db_detach(&catz->db); /* * We're not registering db update callback, it will be