Lines Matching defs:rpsdb
43 #define VALID_RPSDB(rpsdb) ((rpsdb)->common.impmagic == RPSDB_MAGIC)
256 dns_rpsdb_t *rpsdb = NULL;
258 rpsdb = isc_mem_get(mctx, sizeof(*rpsdb));
259 *rpsdb = (dns_rpsdb_t){
266 isc_refcount_init(&rpsdb->common.references, 1);
268 if (!librpz->rsp_create(emsg, &rpsdb->rsp, NULL, rpzs->rps_client,
271 isc_mem_put(mctx, rpsdb, sizeof(*rpsdb));
274 if (rpsdb->rsp == NULL) {
275 isc_mem_put(mctx, rpsdb, sizeof(*rpsdb));
279 rpsdb->common.magic = DNS_DB_MAGIC;
280 rpsdb->common.impmagic = RPSDB_MAGIC;
281 dns_name_init(&rpsdb->common.origin, NULL);
282 isc_mem_attach(mctx, &rpsdb->common.mctx);
284 st->rpsdb = &rpsdb->common;
364 dns_rpsdb_t *rpsdb = (dns_rpsdb_t *)db;
366 REQUIRE(VALID_RPSDB(rpsdb));
368 librpz->rsp_detach(&rpsdb->rsp);
369 isc_refcount_destroy(&rpsdb->common.references);
370 rpsdb->common.impmagic = 0;
371 isc_mem_putanddetach(&rpsdb->common.mctx, rpsdb, sizeof(*rpsdb));
377 dns_rpsdb_t *rpsdb = (dns_rpsdb_t *)db;
379 REQUIRE(VALID_RPSDB(rpsdb));
381 REQUIRE(source == &rpsdb->origin_node || source == &rpsdb->data_node);
383 isc_refcount_increment(&rpsdb->common.references);
389 dns_rpsdb_t *rpsdb = (dns_rpsdb_t *)db;
391 REQUIRE(VALID_RPSDB(rpsdb));
392 REQUIRE(*targetp == &rpsdb->origin_node ||
393 *targetp == &rpsdb->data_node);
402 dns_rpsdb_t *rpsdb = (dns_rpsdb_t *)db;
405 REQUIRE(VALID_RPSDB(rpsdb));
410 * A fake/shim rpsdb has two nodes.
415 *nodep = &rpsdb->origin_node;
417 *nodep = &rpsdb->data_node;
428 dns_rpsdb_t *rpsdb) {
439 dns_db_attach(&rpsdb->common, &dbp);
447 rpsdb_bind_soa(dns_rdataset_t *rdataset, dns_rpsdb_t *rpsdb) {
451 if (!librpz->rsp_soa(&emsg, &ttl, NULL, NULL, &rpsdb->result,
452 rpsdb->rsp))
458 dns_rdataclass_in, ttl, rpsdb);
472 dns_rpsdb_t *rpsdb = (dns_rpsdb_t *)db;
484 REQUIRE(VALID_RPSDB(rpsdb));
486 if (node == &rpsdb->origin_node) {
491 return rpsdb_bind_soa(rdataset, rpsdb);
496 REQUIRE(node == &rpsdb->data_node);
498 switch (rpsdb->result.policy) {
519 rpsdb->result.policy, __FILE__, __LINE__);
524 return rpsdb_bind_soa(rdataset, rpsdb);
539 if (!librpz->rsp_result(&emsg, &rpsdb->result, true, rpsdb->rsp)) {
544 &rpsdb->result, rpsdb->qname->ndata,
545 rpsdb->qname->length, rpsdb->rsp))
562 &rpsdb->result, rpsdb->qname->ndata,
563 rpsdb->qname->length, rpsdb->rsp))
572 rpsdb_bind_rdataset(rdataset, count, rpsdb->result.next_rr, type, class,
573 ttl, rpsdb);
604 dns_rpsdb_t *rpsdb = (dns_rpsdb_t *)db;
610 REQUIRE(VALID_RPSDB(rpsdb));
611 REQUIRE(node == &rpsdb->origin_node || node == &rpsdb->data_node);
613 rpsdb_iter = isc_mem_get(rpsdb->common.mctx, sizeof(*rpsdb_iter));
639 dns_rpsdb_t *rpsdb = (dns_rpsdb_t *)db;
641 REQUIRE(VALID_RPSDB(rpsdb));
644 rpsdb_attachnode(db, &rpsdb->origin_node, nodep DNS__DB_FLARG_PASS);
667 dns_rpsdb_t *rpsdb = NULL;
673 rpsdb = RD_DB(rdataset);
692 if (!librpz->rsp_soa(&emsg, NULL, &rr, NULL, &rpsdb->result,
693 rpsdb->rsp))
702 rpsdb->result.next_rr = RD_NEXT_RR(rdataset);
705 &rpsdb->result, rpsdb->qname->ndata,
706 rpsdb->qname->length, rpsdb->rsp))
713 RD_NEXT_RR(rdataset) = rpsdb->result.next_rr;
725 dns_rpsdb_t *rpsdb = NULL;
728 rpsdb = RD_DB(rdataset);
729 REQUIRE(VALID_RPSDB(rpsdb));
736 if (!librpz->rsp_result(&emsg, &rpsdb->result, true, rpsdb->rsp)) {
743 RD_NEXT_RR(rdataset) = rpsdb->result.next_rr;
751 dns_rpsdb_t *rpsdb = NULL;
755 rpsdb = RD_DB(rdataset);
756 REQUIRE(VALID_RPSDB(rpsdb));
768 dns_rpsdb_t *rpsdb = NULL;
774 rpsdb = RD_DB(source);
775 REQUIRE(VALID_RPSDB(rpsdb));
777 dns_db_attach(&rpsdb->common, &dbp);
785 dns_rpsdb_t *rpsdb = NULL;
787 rpsdb = RD_DB(rdataset);
788 REQUIRE(VALID_RPSDB(rpsdb));
795 dns_rpsdb_t *rpsdb = NULL;
801 rpsdb = (dns_rpsdb_t *)iterator->db;
802 REQUIRE(VALID_RPSDB(rpsdb));
811 dns_rpsdb_t *rpsdb = NULL;
818 rpsdb = (dns_rpsdb_t *)iter->db;
819 REQUIRE(VALID_RPSDB(rpsdb));
826 if (!librpz->rsp_result(&emsg, &rpsdb->result, true, rpsdb->rsp)) {
840 &rpsdb->result, rpsdb->qname->ndata,
841 rpsdb->qname->length, rpsdb->rsp))
872 rpsdb_iter->next_rr = rpsdb->result.next_rr;
881 dns_rpsdb_t *rpsdb = NULL;
884 rpsdb = (dns_rpsdb_t *)iterator->db;
885 REQUIRE(VALID_RPSDB(rpsdb));
896 dns_rpsdb_t *rpsdb = NULL;
899 rpsdb = (dns_rpsdb_t *)iterator->db;
900 REQUIRE(VALID_RPSDB(rpsdb));
906 rpsdb_iter->ttl, rpsdb);