From c526b50afdbe98be46d51ca596c303c3030e4ed3 Mon Sep 17 00:00:00 2001 From: M66B Date: Sat, 4 Mar 2017 14:07:58 +0100 Subject: [PATCH] Fixed DNS nxdomain packet size --- app/src/main/jni/netguard/dns.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/app/src/main/jni/netguard/dns.c b/app/src/main/jni/netguard/dns.c index a513e4c6..f3b14d1c 100644 --- a/app/src/main/jni/netguard/dns.c +++ b/app/src/main/jni/netguard/dns.c @@ -106,6 +106,7 @@ void parse_dns_response(const struct arguments *args, const struct udp_session * } } + int32_t aoff = off; for (int a = 0; a < acount; a++) { off = get_qname(data, *datalen, (uint16_t) off, name); if (off > 0 && off + 10 <= *datalen) { @@ -165,7 +166,7 @@ void parse_dns_response(const struct arguments *args, const struct udp_session * dns->ans_count = 0; dns->auth_count = 0; dns->add_count = 0; - *datalen = sizeof(struct dns_header); + *datalen = aoff; char source[INET6_ADDRSTRLEN + 1]; char dest[INET6_ADDRSTRLEN + 1];