Le 01/09/2026 à 12:44 PM, Manu Nicolas a écrit :
resolv_process_responses() clears the whole response buffer before each receive. The receive operation supplies the message length and all parser accesses are bounded by the corresponding end pointer, so no byte beyond the received message is observed.Remove the unnecessary buffer clear. --- src/resolvers.c | 1 - 1 file changed, 1 deletion(-) diff --git a/src/resolvers.c b/src/resolvers.c index 6700bdeaf..824cc2d06 100644 --- a/src/resolvers.c +++ b/src/resolvers.c @@ -2341,7 +2341,6 @@ static int resolv_process_responses(struct dns_nameserver *ns) /* process all pending input messages */ while (1) { /* read message received */ - memset(buf, '\0', resolvers->accepted_payload_size + 1); if ((buflen = dns_recv_nameserver(ns, (void *)buf, sizeof(buf))) <= 0) { break; }
Merged, thanks ! -- Christopher Faulet

