]> git.ipfire.org Git - thirdparty/bind9.git/commitdiff
Fix rmessage leak in qc-on-resend resend path
authorMichal Nowak <mnowak@isc.org>
Thu, 7 May 2026 09:57:03 +0000 (09:57 +0000)
committerOndřej Surý <ondrej@isc.org>
Thu, 7 May 2026 13:14:06 +0000 (15:14 +0200)
The resend error path returned without releasing the rmessage reference
attached earlier in resquery_response(), so the dns_message_t outlived
shutdown and tripped isc_mem_checkdestroyed().

lib/dns/resolver.c

index c7411fa88394e7e900b2fe2804061672c0d5b792..b2dd2556edd3c20927acf0cf6282319fcd0d8cf6 100644 (file)
@@ -9010,7 +9010,7 @@ resquery_response(isc_task_t *task, isc_event_t *event) {
                                      "exceeded max queries resolving '%s'",
                                      fctx->info);
                        fctx_done(fctx, DNS_R_SERVFAIL, __LINE__);
-                       return;
+                       goto detach_rmessage;
                }
 
                inc_stats(res, dns_resstatscounter_retry);