]> git.ipfire.org Git - thirdparty/ldns.git/commitdiff
when chasing, don't see question NSEC rr as nsec
authorJelte Jansen <jeltejan@NLnetLabs.nl>
Wed, 26 Jul 2006 09:32:00 +0000 (09:32 +0000)
committerJelte Jansen <jeltejan@NLnetLabs.nl>
Wed, 26 Jul 2006 09:32:00 +0000 (09:32 +0000)
dnssec.c
drill/chasetrace.c

index f315ebcd30318d5bdd0f55f24601f2dff6a58ed4..28795ca5784f76a71e369ab7d4ff743609302b85 100644 (file)
--- a/dnssec.c
+++ b/dnssec.c
@@ -1143,10 +1143,15 @@ ldns_nsec_bitmap_covers_type(const ldns_rdf *nsec_bitmap, ldns_rr_type type)
        uint16_t i;
        uint8_t window_block_nr;
        
+       if (!nsec_bitmap) {
+               return false;
+       }
+
        /* Check the bitmap if our type is there */
        bitmap = ldns_rdf_data(nsec_bitmap);
        window_block_nr = (uint8_t) (type / 256);
        i = 0;
+
        while (i < ldns_rdf_size(nsec_bitmap)) {
                if (bitmap[i] == window_block_nr) {
                        /* this is the right window, check the bit */
index 53c13c19e836cea623afd4218d1594b00d3ab64d..5d200c7274f3cc07318d442d6e6e8f1f0a83c220 100644 (file)
@@ -435,7 +435,7 @@ do_chase(ldns_resolver *res, ldns_rdf *name, ldns_rr_type type, ldns_rr_class c,
                return LDNS_STATUS_CRYPTO_NO_TRUSTED_DNSKEY;
        } else {
                /* Try to see if there are NSECS in the packet */
-               nsecs = ldns_pkt_rr_list_by_type(pkt, LDNS_RR_TYPE_NSEC, LDNS_SECTION_ANY);
+               nsecs = ldns_pkt_rr_list_by_type(pkt, LDNS_RR_TYPE_NSEC, LDNS_SECTION_ANY_NOQUESTION);
                result = LDNS_STATUS_CRYPTO_NO_RRSIG;
                
                for (nsec_i = 0; nsec_i < ldns_rr_list_rr_count(nsecs); nsec_i++) {