LDNS_RR_TYPE_DNSKEY,
c,
qflags);
+ if (my_pkt) {
keys = ldns_pkt_rr_list_by_name_and_type(
my_pkt,
key_name,
NULL);
new_chain->parent->packet_qtype = LDNS_RR_TYPE_DNSKEY;
ldns_pkt_free(my_pkt);
+ }
} else {
new_chain->parent = ldns_dnssec_build_data_chain(res,
qflags,
LDNS_RR_TYPE_DS,
c,
qflags);
+ if (my_pkt) {
dss = ldns_pkt_rr_list_by_name_and_type(my_pkt,
key_name,
LDNS_RR_TYPE_DS,
ldns_rr_list_deep_free(dss);
}
ldns_pkt_free(my_pkt);
+ }
my_pkt = ldns_resolver_query(res,
key_name,
LDNS_RR_TYPE_DNSKEY,
c,
qflags);
+ if (my_pkt) {
signatures2 = ldns_pkt_rr_list_by_name_and_type(my_pkt,
key_name,
LDNS_RR_TYPE_RRSIG,
new_chain->signatures = signatures2;
}
ldns_pkt_free(my_pkt);
+ }
}
ldns_dnssec_data_chain *
LDNS_RR_TYPE_DS,
LDNS_RR_CLASS_IN,
qflags);
+ if (!my_pkt) {
+ return new_chain;
+ }
if (ldns_pkt_ancount(my_pkt) > 0) {
/* add error, no sigs but DS in parent */
signatures = ldns_dnssec_pkt_get_rrsigs_for_type(pkt, type);
} else {
my_pkt = ldns_resolver_query(res, name, type, c, qflags);
+ if (my_pkt) {
signatures = ldns_dnssec_pkt_get_rrsigs_for_type(pkt, type);
ldns_pkt_free(my_pkt);
+ }
}
} else {
if (pkt) {
}
if (!signatures) {
my_pkt = ldns_resolver_query(res, name, type, c, qflags);
+ if (my_pkt) {
signatures =
ldns_dnssec_pkt_get_rrsigs_for_name_and_type(my_pkt,
name,
type);
ldns_pkt_free(my_pkt);
+ }
}
}
ldns_rr_list * trusted_keys = NULL;
/* Fetch keys for the domain */
- if ((keypkt = ldns_resolver_query(res,
- domain,
- LDNS_RR_TYPE_DNSKEY,
- LDNS_RR_CLASS_IN,
- LDNS_RD))) {
-
+ keypkt = ldns_resolver_query(res, domain,
+ LDNS_RR_TYPE_DNSKEY, LDNS_RR_CLASS_IN, LDNS_RD);
+ if (keypkt) {
domain_keys = ldns_pkt_rr_list_by_type(keypkt,
LDNS_RR_TYPE_DNSKEY,
LDNS_SECTION_ANSWER);
ldns_rr_list * trusted_keys = NULL;
/* Fetch DS for the domain */
- if ((dspkt = ldns_resolver_query(res,
- domain,
- LDNS_RR_TYPE_DS,
- LDNS_RR_CLASS_IN,
- LDNS_RD))) {
-
+ dspkt = ldns_resolver_query(res, domain,
+ LDNS_RR_TYPE_DS, LDNS_RR_CLASS_IN, LDNS_RD);
+ if (dspkt) {
rrset = ldns_pkt_rr_list_by_type(dspkt,
LDNS_RR_TYPE_DS,
LDNS_SECTION_ANSWER);
if (insecure) {
pkt = ldns_resolver_query(res, domain, LDNS_RR_TYPE_DNSKEY, LDNS_RR_CLASS_IN, LDNS_RD);
+ if (pkt) {
l = ldns_pkt_rr_list_by_type(pkt, LDNS_RR_TYPE_DNSKEY, LDNS_SECTION_ANY_NOQUESTION);
+ }
} else {
l = retrieve_dnskeys(res, domain, LDNS_RR_TYPE_DNSKEY, LDNS_RR_CLASS_IN, dns_root);
}