Lines Matching defs:rdataset
29 #include <dns/rdataset.h>
62 copy_rdataset(dns_rdataset_t *rdataset, isc_buffer_t *buffer) {
69 * Copy the rdataset count to the buffer.
75 count = dns_rdataset_count(rdataset);
79 result = dns_rdataset_first(rdataset);
81 dns_rdataset_current(rdataset, &rdata);
100 result = dns_rdataset_next(rdataset);
134 dns_rdataset_t *rdataset;
147 * rdataset, and store it in 'cache' at 'node'.
180 for (rdataset = ISC_LIST_HEAD(name->list);
181 rdataset != NULL;
182 rdataset = ISC_LIST_NEXT(rdataset, link))
184 if ((rdataset->attributes &
189 type = rdataset->type;
191 type = rdataset->covers;
197 if (ttl > rdataset->ttl) {
198 ttl = rdataset->ttl;
203 if (trust > rdataset->trust) {
204 trust = rdataset->trust;
223 rdataset->type);
226 (unsigned char)rdataset->trust);
228 * Copy the rdataset into the buffer.
230 result = copy_rdataset(rdataset,
298 dns_ncache_towire(dns_rdataset_t *rdataset, dns_compress_t *cctx,
310 * Convert the negative caching rdataset 'rdataset' to wire format,
315 REQUIRE(rdataset != NULL);
316 REQUIRE(rdataset->type == 0);
317 REQUIRE((rdataset->attributes & DNS_RDATASETATTR_NEGATIVE) != 0);
322 result = dns_rdataset_first(rdataset);
324 dns_rdataset_current(rdataset, &rdata);
351 rdata.rdclass = rdataset->rdclass;
380 isc_buffer_putuint16(target, rdataset->rdclass);
381 isc_buffer_putuint32(target, rdataset->ttl);
410 result = dns_rdataset_next(rdataset);
430 rdataset_disassociate(dns_rdataset_t *rdataset DNS__DB_FLARG) {
431 UNUSED(rdataset);
435 rdataset_first(dns_rdataset_t *rdataset) {
439 raw = rdataset->ncache.raw;
442 rdataset->ncache.iter_pos = NULL;
449 rdataset->ncache.iter_pos = raw + 2;
450 rdataset->ncache.iter_count = count - 1;
455 rdataset_next(dns_rdataset_t *rdataset) {
460 raw = rdataset->ncache.iter_pos;
461 count = rdataset->ncache.iter_count;
463 rdataset->ncache.iter_pos = NULL;
468 rdataset->ncache.iter_pos = raw + 2 + length;
469 rdataset->ncache.iter_count = count - 1;
474 rdataset_current(dns_rdataset_t *rdataset, dns_rdata_t *rdata) {
478 raw = rdataset->ncache.iter_pos;
483 dns_rdata_fromregion(rdata, rdataset->rdclass, rdataset->type, &r);
494 rdataset_count(dns_rdataset_t *rdataset) {
498 raw = rdataset->ncache.raw;
505 rdataset_settrust(dns_rdataset_t *rdataset, dns_trust_t trust) {
508 raw = (atomic_uchar *)rdataset->ncache.raw;
510 rdataset->trust = trust;
525 dns_rdatatype_t type, dns_rdataset_t *rdataset) {
540 REQUIRE(!dns_rdataset_isassociated(rdataset));
579 rdataset->methods = &rdataset_methods;
580 rdataset->rdclass = ncacherdataset->rdclass;
581 rdataset->type = type;
582 rdataset->covers = 0;
583 rdataset->ttl = ncacherdataset->ttl;
584 rdataset->trust = trust;
585 rdataset->ncache.raw = remaining.base;
586 rdataset->ncache.iter_pos = NULL;
587 rdataset->ncache.iter_count = 0;
594 dns_rdatatype_t covers, dns_rdataset_t *rdataset) {
611 REQUIRE(!dns_rdataset_isassociated(rdataset));
652 dns_rdata_fromregion(&rdata, rdataset->rdclass,
673 rdataset->methods = &rdataset_methods;
674 rdataset->rdclass = ncacherdataset->rdclass;
675 rdataset->type = dns_rdatatype_rrsig;
676 rdataset->covers = covers;
677 rdataset->ttl = ncacherdataset->ttl;
678 rdataset->trust = trust;
679 rdataset->ncache.raw = remaining.base;
680 rdataset->ncache.iter_pos = NULL;
681 rdataset->ncache.iter_count = 0;
688 dns_rdataset_t *rdataset) {
703 REQUIRE(!dns_rdataset_isassociated(rdataset));
741 rdataset->methods = &rdataset_methods;
742 rdataset->rdclass = ncacherdataset->rdclass;
743 rdataset->type = type;
744 rdataset->covers = covers;
745 rdataset->ttl = ncacherdataset->ttl;
746 rdataset->trust = trust;
747 rdataset->ncache.raw = remaining.base;
748 rdataset->ncache.iter_pos = NULL;
749 rdataset->ncache.iter_count = 0;