aboutsummaryrefslogtreecommitdiff
path: root/drill/dnssec.c
diff options
context:
space:
mode:
authorPierre Pronchery <pierre@freebsdfoundation.org>2023-05-04 21:51:47 +0000
committerEd Maste <emaste@FreeBSD.org>2023-05-05 15:12:07 +0000
commitcf3e3d5bd0a1fae39c74c7db5a4e8b10732d0766 (patch)
tree4c48b81a8fc4921e6e584787f31f0b80af5bcf32 /drill/dnssec.c
parentc6342fe2e90510d8d2296423f2ca92818a7b3d18 (diff)
Diffstat (limited to 'drill/dnssec.c')
-rw-r--r--drill/dnssec.c16
1 files changed, 15 insertions, 1 deletions
diff --git a/drill/dnssec.c b/drill/dnssec.c
index b8074be03cc5..687cfe55a572 100644
--- a/drill/dnssec.c
+++ b/drill/dnssec.c
@@ -180,7 +180,20 @@ ldns_verify_denial(ldns_pkt *pkt, ldns_rdf *name, ldns_rr_type type, ldns_rr_lis
ldns_rr_list *nsecs;
ldns_status result;
-
+ const ldns_rr_descriptor *descriptor;
+
+ if (!pkt) {
+ descriptor = ldns_rr_descript(type);
+
+ printf("NETWORk ERROR! Cannot verify denial for: ");
+ ldns_rdf_print(stdout, name);
+ printf(" type ");
+ if (descriptor && descriptor->_name)
+ printf("%s", descriptor->_name);
+ else
+ printf("TYPE%u", type);
+ return LDNS_STATUS_CRYPTO_NO_RRSIG;
+ }
if (verbosity >= 5) {
printf("VERIFY DENIAL FROM:\n");
ldns_pkt_print(stdout, pkt);
@@ -453,6 +466,7 @@ ldns_nsec3_closest_encloser(ldns_rdf *qname, ldns_rr_type qtype, ldns_rr_list *n
}
if (ldns_dname_cat(hashed_sname, zone_name) != LDNS_STATUS_OK){
+ ldns_rdf_deep_free(hashed_sname);
goto done;
}