From: Remi Gacogne Date: Fri, 24 May 2024 09:13:13 +0000 (+0200) Subject: dnsdist: Fix a user-after-move in the dynamic rules SMT code X-Git-Tag: rec-5.2.0-alpha0~37^2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=refs%2Fpull%2F14236%2Fhead;p=thirdparty%2Fpdns.git dnsdist: Fix a user-after-move in the dynamic rules SMT code Introduced in 099e95eee273937d666255dc7ebe510d717b4a07 (#14182), spotted by Coverity. --- diff --git a/pdns/dnsdistdist/dnsdist-dynblocks.cc b/pdns/dnsdistdist/dnsdist-dynblocks.cc index 7f4ee53462..ec9362d587 100644 --- a/pdns/dnsdistdist/dnsdist-dynblocks.cc +++ b/pdns/dnsdistdist/dnsdist-dynblocks.cc @@ -311,7 +311,8 @@ bool addOrRefreshBlockSMT(SuffixMatchTree& blocks, const timespec& now if (!beQuiet && (got == nullptr || expired)) { warnlog("Inserting dynamic block for %s for %d seconds: %s", dblock.domain, dblock.until.tv_sec - now.tv_sec, dblock.reason); } - blocks.add(dblock.domain, std::move(dblock)); + auto domain = dblock.domain; + blocks.add(domain, std::move(dblock)); return true; } }