Lines Matching refs:rrset
174 struct auth_rrset* rrset, struct regional* region, time_t adjust) in auth_packed_rrset_copy_region() argument
179 key.entry.data = rrset->data; in auth_packed_rrset_copy_region()
182 key.rk.type = htons(rrset->type); in auth_packed_rrset_copy_region()
225 struct dns_msg* msg, struct auth_data* node, struct auth_rrset* rrset) in msg_add_rrset_an() argument
229 if(!rrset || !node) in msg_add_rrset_an()
231 if(msg_rrset_duplicate(msg, node->name, node->namelen, rrset->type, in msg_add_rrset_an()
239 auth_packed_rrset_copy_region(z, node, rrset, region, 0))) in msg_add_rrset_an()
250 struct dns_msg* msg, struct auth_data* node, struct auth_rrset* rrset) in msg_add_rrset_ns() argument
253 if(!rrset || !node) in msg_add_rrset_ns()
255 if(msg_rrset_duplicate(msg, node->name, node->namelen, rrset->type, in msg_add_rrset_ns()
263 auth_packed_rrset_copy_region(z, node, rrset, region, 0))) in msg_add_rrset_ns()
274 struct dns_msg* msg, struct auth_data* node, struct auth_rrset* rrset) in msg_add_rrset_ar() argument
276 if(!rrset || !node) in msg_add_rrset_ar()
278 if(msg_rrset_duplicate(msg, node->name, node->namelen, rrset->type, in msg_add_rrset_ar()
286 auth_packed_rrset_copy_region(z, node, rrset, region, 0))) in msg_add_rrset_ar()
358 auth_rrset_delete(struct auth_rrset* rrset) in auth_rrset_delete() argument
360 if(!rrset) return; in auth_rrset_delete()
361 free(rrset->data); in auth_rrset_delete()
362 free(rrset); in auth_rrset_delete()
654 struct auth_rrset* rrset; in az_domain_rrset() local
656 rrset = n->rrsets; in az_domain_rrset()
657 while(rrset) { in az_domain_rrset()
658 if(rrset->type == t) in az_domain_rrset()
659 return rrset; in az_domain_rrset()
660 rrset = rrset->next; in az_domain_rrset()
669 struct auth_rrset* rrset, *prev; in domain_remove_rrset() local
672 rrset = node->rrsets; in domain_remove_rrset()
673 while(rrset) { in domain_remove_rrset()
674 if(rrset->type == rr_type) { in domain_remove_rrset()
676 if(prev) prev->next = rrset->next; in domain_remove_rrset()
677 else node->rrsets = rrset->next; in domain_remove_rrset()
678 auth_rrset_delete(rrset); in domain_remove_rrset()
681 prev = rrset; in domain_remove_rrset()
682 rrset = rrset->next; in domain_remove_rrset()
733 rrset_remove_rr(struct auth_rrset* rrset, size_t index) in rrset_remove_rr() argument
735 struct packed_rrset_data* d, *old = rrset->data; in rrset_remove_rr()
787 free(rrset->data); in rrset_remove_rr()
788 rrset->data = d; in rrset_remove_rr()
795 rrset_add_rr(struct auth_rrset* rrset, uint32_t rr_ttl, uint8_t* rdata, in rrset_add_rr() argument
798 struct packed_rrset_data* d, *old = rrset->data; in rrset_add_rr()
858 rrset->data = d; in rrset_add_rr()
868 struct auth_rrset* rrset = (struct auth_rrset*)calloc(1, in rrset_create() local
869 sizeof(*rrset)); in rrset_create()
872 if(!rrset) { in rrset_create()
876 rrset->type = rr_type; in rrset_create()
883 free(rrset); in rrset_create()
887 rrset->data = d; in rrset_create()
910 rrset->next = p; in rrset_create()
911 if(prev) prev->next = rrset; in rrset_create()
912 else node->rrsets = rrset; in rrset_create()
913 return rrset; in rrset_create()
937 struct auth_rrset* rrset, struct auth_rrset* rrsig) in rrset_moveover_rrsigs() argument
941 struct packed_rrset_data* old = rrset->data; in rrset_moveover_rrsigs()
944 log_assert(rrset->type == rr_type); in rrset_moveover_rrsigs()
1006 rrset->data = d; in rrset_moveover_rrsigs()
1071 rrsigs_copy_from_rrset_to_rrsigset(struct auth_rrset* rrset, in rrsigs_copy_from_rrset_to_rrsigset() argument
1075 if(rrset->data->rrsig_count == 0) in rrsigs_copy_from_rrset_to_rrsigset()
1080 for(i=rrset->data->count; in rrsigs_copy_from_rrset_to_rrsigset()
1081 i<rrset->data->count+rrset->data->rrsig_count; i++) { in rrsigs_copy_from_rrset_to_rrsigset()
1082 uint8_t* rdata = rrset->data->rr_data[i]; in rrsigs_copy_from_rrset_to_rrsigset()
1083 size_t rdatalen = rrset->data->rr_len[i]; in rrsigs_copy_from_rrset_to_rrsigset()
1084 time_t rr_ttl = rrset->data->rr_ttl[i]; in rrsigs_copy_from_rrset_to_rrsigset()
1101 struct auth_rrset* rrset; in az_domain_add_rr() local
1105 if((rrset=az_domain_rrset(node, ctype))!= NULL) { in az_domain_add_rr()
1108 if(rdata_duplicate(rrset->data, rdata, rdatalen)) { in az_domain_add_rr()
1112 if(!rrset_add_rr(rrset, rr_ttl, rdata, rdatalen, 1)) in az_domain_add_rr()
1114 } else if((rrset=az_domain_rrset(node, rr_type))!= NULL) { in az_domain_add_rr()
1116 if(rdata_duplicate(rrset->data, rdata, rdatalen)) { in az_domain_add_rr()
1120 if(!rrset_add_rr(rrset, rr_ttl, rdata, rdatalen, 0)) in az_domain_add_rr()
1130 if((rrset=az_domain_rrset(node, rr_type))!= NULL) { in az_domain_add_rr()
1132 if(rdata_duplicate(rrset->data, rdata, rdatalen)) { in az_domain_add_rr()
1136 if(!rrset_add_rr(rrset, rr_ttl, rdata, rdatalen, 0)) in az_domain_add_rr()
1141 if(!(rrset=rrset_create(node, rr_type, rr_ttl, rdata, in az_domain_add_rr()
1151 rrset, rrsig)) in az_domain_add_rr()
1202 struct auth_rrset* rrset; in az_domain_remove_rr() local
1206 if((rrset=az_domain_rrset(node, rr_type))!= NULL) { in az_domain_remove_rr()
1207 if(packed_rrset_find_rr(rrset->data, rdata, rdatalen, &index)) { in az_domain_remove_rr()
1208 if(rrset->data->count == 1 && in az_domain_remove_rr()
1209 rrset->data->rrsig_count == 0) { in az_domain_remove_rr()
1212 } else if(rrset->data->count == 1 && in az_domain_remove_rr()
1213 rrset->data->rrsig_count != 0) { in az_domain_remove_rr()
1222 rrset, rrsigset); in az_domain_remove_rr()
1229 if(!rrset_remove_rr(rrset, index)) in az_domain_remove_rr()
1231 rrset->type = LDNS_RR_TYPE_RRSIG; in az_domain_remove_rr()
1232 rrset->data->count = rrset->data->rrsig_count; in az_domain_remove_rr()
1233 rrset->data->rrsig_count = 0; in az_domain_remove_rr()
1237 if(!rrset_remove_rr(rrset, index)) in az_domain_remove_rr()
1248 if((rrset=az_domain_rrset(node, ctype))!= NULL) { in az_domain_remove_rr()
1249 if(az_rrset_find_rrsig(rrset->data, rdata, rdatalen, in az_domain_remove_rr()
1255 if(!rrset_remove_rr(rrset, index)) in az_domain_remove_rr()
2372 struct auth_rrset* rrset = n->rrsets; in domain_has_only_nsec3() local
2374 while(rrset) { in domain_has_only_nsec3()
2375 if(rrset->type == LDNS_RR_TYPE_NSEC3) { in domain_has_only_nsec3()
2377 } else if(rrset->type != LDNS_RR_TYPE_RRSIG) { in domain_has_only_nsec3()
2380 rrset = rrset->next; in domain_has_only_nsec3()
2475 struct auth_rrset** rrset) in az_find_ce() argument
2480 *rrset = NULL; in az_find_ce()
2508 *rrset = lookrrset; in az_find_ce()
2516 *rrset = lookrrset; in az_find_ce()
2537 struct dns_msg* msg, struct auth_rrset* rrset, size_t offset) in az_add_additionals_from() argument
2539 struct packed_rrset_data* d = rrset->data; in az_add_additionals_from()
2723 struct auth_rrset* rrset) in add_synth_cname() argument
2727 if(!create_synth_cname(qname, qname_len, region, dname, rrset, in add_synth_cname()
2773 struct auth_rrset* rrset; in az_find_nsec_cover() local
2783 while((rrset=az_domain_rrset(*node, LDNS_RR_TYPE_NSEC)) == NULL) { in az_find_nsec_cover()
2790 return rrset; in az_find_nsec_cover()
3121 struct dns_msg* msg, struct auth_data* node, struct auth_rrset* rrset) in az_generate_positive_answer() argument
3123 if(!msg_add_rrset_an(z, region, msg, node, rrset)) return 0; in az_generate_positive_answer()
3125 if(rrset->type == LDNS_RR_TYPE_MX) { in az_generate_positive_answer()
3126 if(!az_add_additionals_from(z, region, msg, rrset, 2)) in az_generate_positive_answer()
3128 } else if(rrset->type == LDNS_RR_TYPE_SRV) { in az_generate_positive_answer()
3129 if(!az_add_additionals_from(z, region, msg, rrset, 6)) in az_generate_positive_answer()
3131 } else if(rrset->type == LDNS_RR_TYPE_NS) { in az_generate_positive_answer()
3132 if(!az_add_additionals_from(z, region, msg, rrset, 0)) in az_generate_positive_answer()
3143 struct auth_rrset* rrset; in az_generate_any_answer() local
3146 if((rrset=az_domain_rrset(node, LDNS_RR_TYPE_SOA)) != NULL) { in az_generate_any_answer()
3147 if(!msg_add_rrset_an(z, region, msg, node, rrset)) return 0; in az_generate_any_answer()
3150 if((rrset=az_domain_rrset(node, LDNS_RR_TYPE_MX)) != NULL) { in az_generate_any_answer()
3151 if(!msg_add_rrset_an(z, region, msg, node, rrset)) return 0; in az_generate_any_answer()
3154 if((rrset=az_domain_rrset(node, LDNS_RR_TYPE_A)) != NULL) { in az_generate_any_answer()
3155 if(!msg_add_rrset_an(z, region, msg, node, rrset)) return 0; in az_generate_any_answer()
3158 if((rrset=az_domain_rrset(node, LDNS_RR_TYPE_AAAA)) != NULL) { in az_generate_any_answer()
3159 if(!msg_add_rrset_an(z, region, msg, node, rrset)) return 0; in az_generate_any_answer()
3179 struct auth_rrset* rrset; in follow_cname_chain() local
3190 if((rrset=az_domain_rrset(node, qtype))!=NULL) { in follow_cname_chain()
3192 if(!msg_add_rrset_an(z, region, msg, node, rrset)) in follow_cname_chain()
3196 if((rrset=az_domain_rrset(node, LDNS_RR_TYPE_CNAME))==NULL) in follow_cname_chain()
3198 if(!msg_add_rrset_an(z, region, msg, node, rrset)) return 0; in follow_cname_chain()
3199 d = rrset->data; in follow_cname_chain()
3208 struct auth_data* node, struct auth_rrset* rrset) in az_generate_cname_answer() argument
3210 if(!msg_add_rrset_an(z, region, msg, node, rrset)) return 0; in az_generate_cname_answer()
3211 if(!rrset) return 1; in az_generate_cname_answer()
3212 if(!follow_cname_chain(z, qinfo->qtype, region, msg, rrset->data)) in az_generate_cname_answer()
3222 struct auth_rrset* rrset; in az_generate_notype_answer() local
3225 if((rrset=az_domain_rrset(node, LDNS_RR_TYPE_NSEC))!=NULL) { in az_generate_notype_answer()
3226 if(!msg_add_rrset_ns(z, region, msg, node, rrset)) return 0; in az_generate_notype_answer()
3240 struct dns_msg* msg, struct auth_data* ce, struct auth_rrset* rrset) in az_generate_referral_answer() argument
3246 if(!msg_add_rrset_ns(z, region, msg, ce, rrset)) return 0; in az_generate_referral_answer()
3263 if(!az_add_additionals_from(z, region, msg, rrset, 0)) return 0; in az_generate_referral_answer()
3271 struct auth_rrset* rrset) in az_generate_dname_answer() argument
3275 if(!msg_add_rrset_an(z, region, msg, ce, rrset)) return 0; in az_generate_dname_answer()
3277 msg, ce, rrset)) return 0; in az_generate_dname_answer()
3296 struct auth_rrset* rrset, *nsec; in az_generate_wildcard_answer() local
3298 if((rrset=az_domain_rrset(wildcard, qinfo->qtype)) != NULL) { in az_generate_wildcard_answer()
3300 if(!msg_add_rrset_an(z, region, msg, wildcard, rrset)) in az_generate_wildcard_answer()
3304 } else if((rrset=az_domain_rrset(wildcard, LDNS_RR_TYPE_CNAME))!=NULL) { in az_generate_wildcard_answer()
3306 if(!msg_add_rrset_an(z, region, msg, wildcard, rrset)) in az_generate_wildcard_answer()
3311 rrset->data)) in az_generate_wildcard_answer()
3376 struct auth_rrset* rrset; in az_generate_answer_with_node() local
3378 if((rrset=az_domain_rrset(node, qinfo->qtype)) != NULL) { in az_generate_answer_with_node()
3379 return az_generate_positive_answer(z, region, msg, node, rrset); in az_generate_answer_with_node()
3382 if((rrset=az_domain_rrset(node, LDNS_RR_TYPE_CNAME)) != NULL) { in az_generate_answer_with_node()
3384 node, rrset); in az_generate_answer_with_node()
3399 struct auth_rrset* rrset, struct auth_data* node) in az_generate_answer_nonexistnode() argument
3405 if(ce && rrset && rrset->type == LDNS_RR_TYPE_NS) { in az_generate_answer_nonexistnode()
3406 return az_generate_referral_answer(z, region, msg, ce, rrset); in az_generate_answer_nonexistnode()
3408 if(ce && rrset && rrset->type == LDNS_RR_TYPE_DNAME) { in az_generate_answer_nonexistnode()
3410 rrset); in az_generate_answer_nonexistnode()
3432 struct auth_rrset* rrset; in auth_zone_generate_answer() local
3445 node_exists = az_find_ce(z, qinfo, node, node_exact, &ce, &rrset); in auth_zone_generate_answer()
3463 if(rrset) sldns_wire2str_type_buf(rrset->type, rrstr, in auth_zone_generate_answer()
3478 ce, rrset, node); in auth_zone_generate_answer()
5612 xfr_master_add_addrs(struct auth_master* m, struct ub_packed_rrset_key* rrset, in xfr_master_add_addrs() argument
5617 if(!m || !rrset) return; in xfr_master_add_addrs()
5620 data = (struct packed_rrset_data*)rrset->entry.data; in xfr_master_add_addrs()
7390 struct auth_rrset* rrset = first; in authdata_rrsets_to_list() local
7392 while(rrset) { in authdata_rrsets_to_list()
7395 array[num] = rrset; in authdata_rrsets_to_list()
7397 rrset = rrset->next; in authdata_rrsets_to_list()
7435 struct auth_rrset* rrset, struct regional* region, in zonemd_simple_rrset() argument
7442 key.entry.data = rrset->data; in zonemd_simple_rrset()
7445 key.rk.type = htons(rrset->type); in zonemd_simple_rrset()
7462 static size_t zonemd_simple_count_rrsig(struct auth_rrset* rrset, in zonemd_simple_count_rrsig() argument
7467 if(rrset) { in zonemd_simple_count_rrsig()
7469 for(j = 0; j<rrset->data->count; j++) { in zonemd_simple_count_rrsig()
7470 if(rrsig_rdata_get_type_covered(rrset->data-> in zonemd_simple_count_rrsig()
7471 rr_data[j], rrset->data->rr_len[j]) == in zonemd_simple_count_rrsig()
7538 size_t* done, struct auth_rrset* rrset, in add_rrset_into_data() argument
7541 if(rrset) { in add_rrset_into_data()
7543 for(j = 0; j<rrset->data->count; j++) { in add_rrset_into_data()
7544 if(rrsig_rdata_get_type_covered(rrset->data-> in add_rrset_into_data()
7545 rr_data[j], rrset->data->rr_len[j]) == in add_rrset_into_data()
7551 data->rr_len[*done] = rrset->data->rr_len[j]; in add_rrset_into_data()
7552 data->rr_ttl[*done] = rrset->data->rr_ttl[j]; in add_rrset_into_data()
7556 data->rr_data[*done] = rrset->data->rr_data[j]; in add_rrset_into_data()
7565 struct auth_rrset* rrset, struct auth_rrset** rrlist, size_t rrnum, in zonemd_simple_rrsig() argument
7591 data.count = zonemd_simple_count_rrsig(rrset, rrlist, rrnum, z, node); in zonemd_simple_rrsig()
7600 add_rrset_into_data(&data, &done, rrset, z, node); in zonemd_simple_rrsig()
7771 struct auth_rrset* rrset, char** why_bogus, uint8_t* sigalg) in zonemd_dnssec_verify_rrset() argument
7788 pk.entry.data = rrset->data; in zonemd_dnssec_verify_rrset()
7791 pk.rk.type = htons(rrset->type); in zonemd_dnssec_verify_rrset()
7796 sldns_wire2str_type_buf(rrset->type, typestr, sizeof(typestr)); in zonemd_dnssec_verify_rrset()