Hi all,

I believe we are affected by this bug and had to downgrade to 2.89 on our 
Debian installation.


I see it has been a few months since the last message regarding this issue. I'm 
just a normal user and a little bit confused on how to proceed.
Is this something that is still being worked on, and is there an expectation of 
when the new version will be released that fixes this issue? Or is there 
something wrong with the program performing the DNS requests and should I ask 
them to fix something on their side to handle what is happening here?


Thanks in advance!
Niels Hendriks



 From:   Rahul Thakur via Dnsmasq-discuss 
<dnsmasq-discuss@lists.thekelleys.org.uk> 
 To:   <dnsmasq-discuss@lists.thekelleys.org.uk> 
 Sent:   04/10/2024 1:33 PM 
 Subject:   [Dnsmasq-discuss] [PATCH] forward.c: fix handling of truncated 
response 

From: Rahul Thakur <rahul.tha...@iopsys.eu> 
 
The handling of truncated reponse is broken in 2.90. The answers 
are removed before forwarding in case TC bit is set, which 
seems incorrect as per rfc 5625. 
A combined reading of section 4.4.1 of rfc 5625 section 6.1.3.2 
of rfc 1123 suggests when dnsmasq explicitly deletes the answers 
in a truncated response, then it deprives clients that do not fallback 
to TCP and are happy with the truncated UDP response to be able 
to resolve the queries. In light of this, it sounds like a better 
strategy is to forward the truncated UDP response as is to the client, 
and let the client decide what action it wants to take. 
 
Signed-off-by: Rahul Thakur <rahul.tha...@iopsys.eu> 
--- 
 src/forward.c | 3 --- 
 1 file changed, 3 deletions(-) 
 
diff --git a/src/forward.c b/src/forward.c 
index 10e7496..1ede913 100644 
--- a/src/forward.c 
+++ b/src/forward.c 
@@ -785,9 +785,6 @@ static size_t process_reply(struct dns_header *header, 
time_t now, struct server 
   if (header->hb3 & HB3_TC) 
     { 
       log_query(F_UPSTREAM, NULL, NULL, "truncated", 0); 
-      header->ancount = htons(0); 
-      header->nscount = htons(0); 
-      header->arcount = htons(0); 
     } 
  
   if  (!(header->hb3 & HB3_TC) && (!bogusanswer || (header->hb4 & HB4_CD))) 
--  
2.25.1 
 
 
_______________________________________________ 
Dnsmasq-discuss mailing list 
Dnsmasq-discuss@lists.thekelleys.org.uk 
https://lists.thekelleys.org.uk/cgi-bin/mailman/listinfo/dnsmasq-discuss 
_______________________________________________
Dnsmasq-discuss mailing list
Dnsmasq-discuss@lists.thekelleys.org.uk
https://lists.thekelleys.org.uk/cgi-bin/mailman/listinfo/dnsmasq-discuss

Reply via email to