Lines Matching +defs:common +defs:h

18 #include <inttypes.h>
19 #include <stdbool.h>
20 #include <sys/mman.h>
22 #include <isc/ascii.h>
23 #include <isc/async.h>
24 #include <isc/atomic.h>
25 #include <isc/crc64.h>
26 #include <isc/file.h>
27 #include <isc/hash.h>
28 #include <isc/hashmap.h>
29 #include <isc/heap.h>
30 #include <isc/hex.h>
31 #include <isc/loop.h>
32 #include <isc/mem.h>
33 #include <isc/mutex.h>
34 #include <isc/once.h>
35 #include <isc/random.h>
36 #include <isc/refcount.h>
37 #include <isc/result.h>
38 #include <isc/rwlock.h>
39 #include <isc/serial.h>
40 #include <isc/stdio.h>
41 #include <isc/string.h>
42 #include <isc/time.h>
43 #include <isc/urcu.h>
44 #include <isc/util.h>
46 #include <dns/callbacks.h>
47 #include <dns/db.h>
48 #include <dns/dbiterator.h>
49 #include <dns/fixedname.h>
50 #include <dns/log.h>
51 #include <dns/masterdump.h>
52 #include <dns/nsec.h>
53 #include <dns/nsec3.h>
54 #include <dns/rbt.h>
55 #include <dns/rdata.h>
56 #include <dns/rdataset.h>
57 #include <dns/rdatasetiter.h>
58 #include <dns/rdataslab.h>
59 #include <dns/rdatastruct.h>
60 #include <dns/stats.h>
61 #include <dns/time.h>
62 #include <dns/view.h>
63 #include <dns/zone.h>
64 #include <dns/zonekey.h>
66 #include "db_p.h"
67 #include "rbtdb_p.h"
120 (NXDOMAIN(header) ? 0 : rbtdb->common.serve_stale_ttl)
128 (((rbtiterator)->common.options & DNS_DB_EXPIREDOK) != 0)
131 (((rbtiterator)->common.options & DNS_DB_STALEOK) != 0)
133 #define KEEPSTALE(rbtdb) ((rbtdb)->common.serve_stale_ttl > 0)
190 dns_rdatasetiter_t common;
234 dns_dbiterator_t common;
388 dns_slabheader_t *h = what;
390 h->heap_index = idx;
472 isc_mem_put(rbtdb->common.mctx, rbtdb->current_version,
525 if (dns_name_dynamic(&rbtdb->common.origin)) {
526 dns_name_format(&rbtdb->common.origin, buf,
535 if (dns_name_dynamic(&rbtdb->common.origin)) {
536 dns_name_free(&rbtdb->common.origin, rbtdb->common.mctx);
550 isc_mem_cput(rbtdb->common.mctx, rbtdb->lru,
561 isc_mem_cput(rbtdb->common.mctx, rbtdb->deadnodes,
585 isc_mem_cput(rbtdb->common.mctx, rbtdb->node_locks,
588 isc_refcount_destroy(&rbtdb->common.references);
594 rbtdb->common.magic = 0;
595 rbtdb->common.impmagic = 0;
598 if (rbtdb->common.update_listeners != NULL) {
599 INSIST(!cds_lfht_destroy(rbtdb->common.update_listeners, NULL));
602 isc_mem_putanddetach(&rbtdb->common.mctx, rbtdb, sizeof(*rbtdb));
654 if (dns_name_dynamic(&rbtdb->common.origin)) {
655 dns_name_format(&rbtdb->common.origin, buf,
715 version = allocate_version(rbtdb->common.mctx, rbtdb->next_serial, 1,
773 changed = isc_mem_get(rbtdb->common.mctx, sizeof(*changed));
1173 rbtdb_prune_t *prune = isc_mem_get(rbtdb->common.mctx, sizeof(*prune));
1510 isc_mem_put(rbtdb->common.mctx, prune, sizeof(*prune));
1709 &rdata, rbtdb->common.rdclass,
1954 isc_mem_put(rbtdb->common.mctx, cleanup_version,
2031 isc_mem_put(rbtdb->common.mctx, changed,
2173 rdataset->rdclass = rbtdb->common.rdclass;
2300 if (dns_name_dynamic(&rbtdb->common.origin)) {
2301 dns_name_format(&rbtdb->common.origin, buf,
2324 rbtdbiter = isc_mem_get(rbtdb->common.mctx, sizeof(*rbtdbiter));
2326 rbtdbiter->common.methods = &dbiterator_methods;
2327 rbtdbiter->common.db = NULL;
2328 dns_db_attach(db, &rbtdbiter->common.db);
2329 rbtdbiter->common.relative_names = ((options & DNS_DB_RELATIVENAMES) !=
2331 rbtdbiter->common.magic = DNS_DBITERATOR_MAGIC;
2371 iterator = isc_mem_get(rbtdb->common.mctx, sizeof(*iterator));
2390 iterator->common.magic = DNS_RDATASETITER_MAGIC;
2391 iterator->common.methods = &rdatasetiter_methods;
2392 iterator->common.db = db;
2393 iterator->common.node = node;
2394 iterator->common.version = (dns_dbversion_t *)rbtversion;
2395 iterator->common.options = options;
2396 iterator->common.now = now;
2783 rbtdb->common.mctx,
2784 rbtdb->common.rdclass,
2836 rbtdb->common.rdclass,
3312 result = dns_rdataslab_fromrdataset(rdataset, rbtdb->common.mctx,
3377 result = addnoqname(rbtdb->common.mctx, newheader,
3385 result = addclosest(rbtdb->common.mctx, newheader,
3425 if (IS_CACHE(rbtdb) && isc_mem_isovermem(rbtdb->common.mctx)) {
3535 result = dns_rdataslab_fromrdataset(rdataset, rbtdb->common.mctx,
3609 rbtdb->common.mctx, rbtdb->common.rdclass,
3903 .common.origin = DNS_NAME_INITEMPTY,
3904 .common.rdclass = rdclass,
3911 isc_refcount_init(&rbtdb->common.references, 1);
3921 rbtdb->common.methods = &dns__rbtdb_cachemethods;
3922 rbtdb->common.attributes |= DNS_DBATTR_CACHE;
3924 rbtdb->common.methods = &dns__rbtdb_zonemethods;
3925 rbtdb->common.attributes |= DNS_DBATTR_STUB;
3927 rbtdb->common.methods = &dns__rbtdb_zonemethods;
3953 rbtdb->common.update_listeners = cds_lfht_new(16, 16, 0, 0, NULL);
4002 isc_mem_attach(mctx, &rbtdb->common.mctx);
4008 dns_name_dupwithoffsets(origin, mctx, &rbtdb->common.origin);
4045 result = dns_rbt_addnode(rbtdb->tree, &rbtdb->common.origin,
4066 result = dns_rbt_addnode(rbtdb->nsec3, &rbtdb->common.origin,
4096 rbtdb->common.magic = DNS_DB_MAGIC;
4097 rbtdb->common.impmagic = RBTDB_MAGIC;
4120 if (rbtiterator->common.version != NULL) {
4121 dns__rbtdb_closeversion(rbtiterator->common.db,
4122 &rbtiterator->common.version,
4125 dns__db_detachnode(rbtiterator->common.db,
4126 &rbtiterator->common.node DNS__DB_FLARG_PASS);
4127 isc_mem_put(rbtiterator->common.db->mctx, rbtiterator,
4148 if (!IS_CACHE(rbtdb) || ACTIVE(header, rbtiterator->common.now)) {
4156 if (!STALEOK(rbtiterator) || (rbtiterator->common.now > stale_ttl)) {
4165 dns_rbtdb_t *rbtdb = (dns_rbtdb_t *)(rbtiterator->common.db);
4166 dns_rbtnode_t *rbtnode = rbtiterator->common.node;
4167 dns_rbtdb_version_t *rbtversion = rbtiterator->common.version;
4213 dns_rbtdb_t *rbtdb = (dns_rbtdb_t *)(rbtiterator->common.db);
4214 dns_rbtnode_t *rbtnode = rbtiterator->common.node;
4215 dns_rbtdb_version_t *rbtversion = rbtiterator->common.version;
4307 dns_rbtdb_t *rbtdb = (dns_rbtdb_t *)(rbtiterator->common.db);
4308 dns_rbtnode_t *rbtnode = rbtiterator->common.node;
4317 dns__rbtdb_bindrdataset(rbtdb, rbtnode, header, rbtiterator->common.now,
4330 dns_rbtdb_t *rbtdb = (dns_rbtdb_t *)rbtdbiter->common.db;
4343 dns_rbtdb_t *rbtdb = (dns_rbtdb_t *)rbtdbiter->common.db;
4368 dns_rbtdb_t *rbtdb = (dns_rbtdb_t *)rbtdbiter->common.db;
4381 dns_rbtdb_t *rbtdb = (dns_rbtdb_t *)rbtdbiter->common.db;
4391 dns_db_attach(rbtdbiter->common.db, &db);
4392 dns_db_detach(&rbtdbiter->common.db);
4815 if (rbtdbiter->common.relative_names) {
4822 if (rbtdbiter->common.relative_names && rbtdbiter->new_origin) {