dns_slabheader_t *header_prev = NULL, *header_next = NULL;
dns_slabheader_t *found = NULL, *foundsig = NULL;
dns_typepair_t typepair, sigpair, negpair;
- isc_result_t result;
+ isc_result_t result = ISC_R_SUCCESS;
isc_rwlock_t *nlock = NULL;
isc_rwlocktype_t nlocktype = isc_rwlocktype_none;
qpc_search_t search = (qpc_search_t){
REQUIRE(version == NULL);
REQUIRE(type != dns_rdatatype_any);
- result = ISC_R_SUCCESS;
+ if (type == dns_rdatatype_none && covers == dns_rdatatype_none) {
+ return ISC_R_NOTFOUND;
+ }
nlock = &qpdb->buckets[qpnode->locknum].lock;
NODE_RDLOCK(nlock, &nlocktype);
isc_region_t *region, uint32_t maxrrperset) {
isc_result_t result;
+ if (rdataset->type == dns_rdatatype_none &&
+ rdataset->covers == dns_rdatatype_none)
+ {
+ return DNS_R_DISALLOWED;
+ }
+
result = makeslab(rdataset, mctx, region, maxrrperset);
if (result == ISC_R_SUCCESS) {
dns_slabheader_t *new = (dns_slabheader_t *)region->base;
ISC_RUN_TEST_IMPL(subtract) {
isc_result_t res;
dns_rdataset_t rdataset;
+ dns_rdata_t rdata = DNS_RDATA_INIT;
dns_rdatalist_t rdatalist;
dns_dbnode_t *node = NULL;
+ char *txt = (char *)"\006text 1";
+ size_t len = strlen(txt);
- UNUSED(state);
+ rdata.rdclass = dns_rdataclass_in;
+ rdata.type = dns_rdatatype_txt;
+
+ rdata.length = len;
+ rdata.data = (unsigned char *)txt;
dns_rdataset_init(&rdataset);
dns_rdatalist_init(&rdatalist);
rdatalist.rdclass = dns_rdataclass_in;
+ rdatalist.type = dns_rdatatype_txt;
+
+ ISC_LIST_APPEND(rdatalist.rdata, &rdata, link);
dns_rdatalist_tordataset(&rdatalist, &rdataset);
ISC_RUN_TEST_IMPL(addrdataset) {
isc_result_t res;
dns_rdataset_t rdataset;
+ dns_rdata_t rdata = DNS_RDATA_INIT;
dns_dbnode_t *node = NULL;
dns_rdatalist_t rdatalist;
+ char *txt = (char *)"\006text 1";
+ size_t len = strlen(txt);
- UNUSED(state);
+ rdata.rdclass = dns_rdataclass_in;
+ rdata.type = dns_rdatatype_txt;
+
+ rdata.length = len;
+ rdata.data = (unsigned char *)txt;
dns_rdataset_init(&rdataset);
dns_rdatalist_init(&rdatalist);
rdatalist.rdclass = dns_rdataclass_in;
+ rdatalist.type = dns_rdatatype_txt;
+
+ ISC_LIST_APPEND(rdatalist.rdata, &rdata, link);
dns_rdatalist_tordataset(&rdatalist, &rdataset);