]> git.ipfire.org Git - thirdparty/unbound.git/commitdiff
fix for key cache lookup
authorWouter Wijngaards <wouter@nlnetlabs.nl>
Thu, 29 Apr 2010 12:52:44 +0000 (12:52 +0000)
committerWouter Wijngaards <wouter@nlnetlabs.nl>
Thu, 29 Apr 2010 12:52:44 +0000 (12:52 +0000)
git-svn-id: file:///svn/unbound/trunk@2105 be551aaa-1e26-0410-a405-d3ace91eadb9

iterator/iter_utils.c

index f63b6fe3923c13fac8007eaa9803970e27a3cca7..b3a31fa5fbe5537728f9a5fd402c5c1fea66cd7e 100644 (file)
@@ -577,9 +577,14 @@ iter_indicates_dnssec(struct module_env* env, struct delegpt* dp,
                struct key_entry_key* kk = key_cache_obtain(env->key_cache,
                        dp->name, dp->namelen, dclass, env->scratch, *env->now);
                if(kk) {
-                       if(key_entry_isgood(kk) || key_entry_isbad(kk)) {
+                       if(query_dname_compare(kk->name, dp->name) == 0) {
+                         if(key_entry_isgood(kk) || key_entry_isbad(kk)) {
                                regional_free_all(env->scratch);
                                return 1;
+                         } else if(key_entry_isnull(kk)) {
+                               regional_free_all(env->scratch);
+                               return 0;
+                         }
                        }
                        regional_free_all(env->scratch);
                }