Bladeren bron

inet: do not filter responses in res_query

Fixes bug #5342

res_query was silently rejecting responses against T_ANY DNS
questions.

Remove the type-filtering from res_query altogether.
__dns_lookup is supposed to return the proper stuff that you asked
for (and only that).

Signed-off-by: Timo Teräs <timo.teras@iki.fi>
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Timo Teräs 15 jaren geleden
bovenliggende
commit
7e434242bd
1 gewijzigde bestanden met toevoegingen van 4 en 5 verwijderingen
  1. 4 5
      libc/inet/resolv.c

+ 4 - 5
libc/inet/resolv.c

@@ -3732,11 +3732,10 @@ int res_query(const char *dname, int class, int type,
 
 	free(a.dotted);
 
-	if (a.atype == type) { /* CNAME */
-		if (i > anslen)
-			i = anslen;
-		memcpy(answer, packet, i);
-	}
+	if (i > anslen)
+		i = anslen;
+	memcpy(answer, packet, i);
+
 	free(packet);
 	return i;
 }