]> git.ipfire.org Git - thirdparty/knot-resolver.git/commitdiff
lib/resolve: clear AD flag if there are CNAMEs synthesized from wildcard covered...
authorGrigorii Demidov <grigorii.demidov@nic.cz>
Wed, 7 Jun 2017 10:31:39 +0000 (12:31 +0200)
committerGrigorii Demidov <grigorii.demidov@nic.cz>
Wed, 7 Jun 2017 10:31:39 +0000 (12:31 +0200)
lib/resolve.c

index 3dc4383f9e66986aa4e2d0449d4514f47a433153..d24b6c1c9ce928229f445c23e674cf11e1947ab2 100644 (file)
@@ -636,6 +636,17 @@ static int answer_finalize(struct kr_request *request, int state)
                knot_wire_clear_ad(answer->wire);
        }
 
+       if (last) {
+               struct kr_query *cname_parent = last->cname_parent;
+               while (cname_parent != NULL) {
+                       if (cname_parent->flags & QUERY_DNSSEC_OPTOUT) {
+                               knot_wire_clear_ad(answer->wire);
+                               break;
+                       }
+                       cname_parent = cname_parent->cname_parent;
+               }
+       }
+
        return ret;
 }