]> git.ipfire.org Git - thirdparty/unbound.git/commitdiff
Slightly more general (i.e. for TYPE0 too).
authorWouter Wijngaards <wouter@nlnetlabs.nl>
Mon, 18 Apr 2016 12:23:21 +0000 (12:23 +0000)
committerWouter Wijngaards <wouter@nlnetlabs.nl>
Mon, 18 Apr 2016 12:23:21 +0000 (12:23 +0000)
git-svn-id: file:///svn/unbound/trunk@3703 be551aaa-1e26-0410-a405-d3ace91eadb9

services/outside_network.c

index 28d749a33c197e6017a2e597f34ffbfbe02e4db2..3e8c6137c9626c6086114cbce8bfa6de9ae73b49 100644 (file)
@@ -1726,13 +1726,13 @@ packet_edns_malformed(struct sldns_buffer* buf, uint16_t qtype)
        if(LDNS_QDCOUNT(sldns_buffer_begin(buf)) != 1 ||
                LDNS_ANCOUNT(sldns_buffer_begin(buf)) == 0)
                return 0;
-       if(qtype == 0)
-               return 0; /* we asked for type 0 */
        /* skip qname */
        len = dname_valid(sldns_buffer_at(buf, LDNS_HEADER_SIZE),
                sldns_buffer_limit(buf)-LDNS_HEADER_SIZE);
        if(len == 0)
                return 0;
+       if(len == 1 && qtype == 0)
+               return 0; /* we asked for '.' and type 0 */
        /* and then 4 bytes (type and class of query) */
        if(sldns_buffer_limit(buf) < LDNS_HEADER_SIZE + len + 4 + 3)
                return 0;