Update plen when getting retried query from stash.
authorSimon Kelley <simon@thekelleys.org.uk>
Mon, 10 Feb 2025 12:26:15 +0000 (12:26 +0000)
committerSimon Kelley <simon@thekelleys.org.uk>
Mon, 10 Feb 2025 12:26:15 +0000 (12:26 +0000)
They should be equal, but that depends on untrusted data.

src/forward.c

index c20c557..66b5b92 100644 (file)
@@ -205,6 +205,7 @@ static void forward_query(int udpfd, union mysockaddr *udpaddr,
         may fall through below and forward the query in the packet buffer again and we
         want to use the same case scrambling as the first time. */
       blockdata_retrieve(forward->stash, forward->stash_len, (void *)header); 
+      plen = forward->stash_len;
 
       for (src = &forward->frec_src; src; src = src->next)
        if (src->orig_id == id &&