From cc4cb67149d6684d64273df74c069dbacacfdae2 Mon Sep 17 00:00:00 2001 From: Aram Sargsyan Date: Tue, 3 Jan 2023 13:21:34 +0000 Subject: [PATCH] Fix a shutdown bug in update_rpz_cb() When shutting down, the cleanup path should not try to destroy 'newnodes', because it is NULL at that point. Introduce another label for the "shuttingdown" scenario. (cherry picked from commit 975d16230b5831532ec66769b60657c86882a244) --- lib/dns/rpz.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/dns/rpz.c b/lib/dns/rpz.c index 4cacb4f8aa..eb19c4d7af 100644 --- a/lib/dns/rpz.c +++ b/lib/dns/rpz.c @@ -1918,7 +1918,7 @@ update_rpz_cb(void *data) { result = dns__rpz_shuttingdown(rpz->rpzs); if (result != ISC_R_SUCCESS) { - goto cleanup; + goto shuttingdown; } isc_ht_init(&newnodes, rpz->rpzs->mctx, 1, ISC_HT_CASE_SENSITIVE); @@ -1939,6 +1939,7 @@ update_rpz_cb(void *data) { cleanup: isc_ht_destroy(&newnodes); +shuttingdown: rpz->updateresult = result; }