From 45351813e0b49daa6e668c16d91e6685feb8db1c Mon Sep 17 00:00:00 2001 From: Remi Gacogne Date: Mon, 28 Feb 2022 13:20:40 +0100 Subject: [PATCH] dnsdist: Properly release UDP states when using random IDs --- pdns/dnsdist.cc | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pdns/dnsdist.cc b/pdns/dnsdist.cc index 58f695e118..204b132695 100644 --- a/pdns/dnsdist.cc +++ b/pdns/dnsdist.cc @@ -657,6 +657,7 @@ void responderThread(std::shared_ptr dss) // DoH query, we cannot touch du after that handleUDPResponseForDoH(std::move(du), std::move(response), std::move(*ids)); #endif + dss->releaseState(queryId); continue; } @@ -667,6 +668,7 @@ void responderThread(std::shared_ptr dss) memcpy(&cleartextDH, dr.getHeader(), sizeof(cleartextDH)); if (!processResponse(response, localRespRuleActions, dr, ids->cs && ids->cs->muted, true)) { + dss->releaseState(queryId); continue; } -- 2.47.2