Symbol: zone
regress/lib/libz/infcover.c
100
zone->first = item;
regress/lib/libz/infcover.c
103
zone->total += item->size;
regress/lib/libz/infcover.c
104
if (zone->total > zone->highwater)
regress/lib/libz/infcover.c
105
zone->highwater = zone->total;
regress/lib/libz/infcover.c
115
struct mem_zone *zone = mem;
regress/lib/libz/infcover.c
118
if (zone == NULL) {
regress/lib/libz/infcover.c
125
next = zone->first;
regress/lib/libz/infcover.c
128
zone->first = next->next; /* first one is it, remove from list */
regress/lib/libz/infcover.c
136
zone->notlifo++; /* not a LIFO free */
regress/lib/libz/infcover.c
144
zone->total -= next->size;
regress/lib/libz/infcover.c
150
zone->rogue++;
regress/lib/libz/infcover.c
160
struct mem_zone *zone;
regress/lib/libz/infcover.c
162
zone = malloc(sizeof(struct mem_zone));
regress/lib/libz/infcover.c
163
assert(zone != NULL);
regress/lib/libz/infcover.c
164
zone->first = NULL;
regress/lib/libz/infcover.c
165
zone->total = 0;
regress/lib/libz/infcover.c
166
zone->highwater = 0;
regress/lib/libz/infcover.c
167
zone->limit = 0;
regress/lib/libz/infcover.c
168
zone->notlifo = 0;
regress/lib/libz/infcover.c
169
zone->rogue = 0;
regress/lib/libz/infcover.c
170
strm->opaque = zone;
regress/lib/libz/infcover.c
178
struct mem_zone *zone = strm->opaque;
regress/lib/libz/infcover.c
180
zone->limit = limit;
regress/lib/libz/infcover.c
186
struct mem_zone *zone = strm->opaque;
regress/lib/libz/infcover.c
188
fprintf(stderr, "%s: %zu allocated\n", prefix, zone->total);
regress/lib/libz/infcover.c
194
struct mem_zone *zone = strm->opaque;
regress/lib/libz/infcover.c
196
fprintf(stderr, "%s: %zu high water mark\n", prefix, zone->highwater);
regress/lib/libz/infcover.c
204
struct mem_zone *zone = strm->opaque;
regress/lib/libz/infcover.c
210
item = zone->first;
regress/lib/libz/infcover.c
220
if (count || zone->total)
regress/lib/libz/infcover.c
222
prefix, zone->total, count);
regress/lib/libz/infcover.c
223
if (zone->notlifo)
regress/lib/libz/infcover.c
224
fprintf(stderr, "** %s: %d frees not LIFO\n", prefix, zone->notlifo);
regress/lib/libz/infcover.c
225
if (zone->rogue)
regress/lib/libz/infcover.c
227
prefix, zone->rogue);
regress/lib/libz/infcover.c
230
free(zone);
regress/lib/libz/infcover.c
75
struct mem_zone *zone = mem;
regress/lib/libz/infcover.c
79
if (zone == NULL || (zone->limit && zone->total + len > zone->limit))
regress/lib/libz/infcover.c
99
item->next = zone->first;
sbin/unwind/libunbound/dnstap/dnstap.h
189
uint8_t *zone, size_t zone_len,
sbin/unwind/libunbound/dnstap/dnstap.h
214
uint8_t *zone, size_t zone_len,
sbin/unwind/libunbound/iterator/iter_scrub.c
333
pkt_sub(sldns_buffer* pkt, uint8_t* comprname, uint8_t* zone)
sbin/unwind/libunbound/iterator/iter_scrub.c
337
return dname_subdomain_c(buf, zone);
sbin/unwind/libunbound/iterator/iter_scrub.c
342
sub_of_pkt(sldns_buffer* pkt, uint8_t* zone, uint8_t* comprname)
sbin/unwind/libunbound/iterator/iter_scrub.c
346
return dname_subdomain_c(zone, buf);
sbin/unwind/libunbound/libunbound/libunbound.c
1061
int ub_ctx_set_stub(struct ub_ctx* ctx, const char* zone, const char* addr,
sbin/unwind/libunbound/libunbound/libunbound.c
1068
if(zone) {
sbin/unwind/libunbound/libunbound/libunbound.c
1072
if(!parse_dname(zone, &nm, &nmlen, &nmlabs)) {
sbin/unwind/libunbound/libunbound/libunbound.c
1078
zone = ".";
sbin/unwind/libunbound/libunbound/libunbound.c
1100
elem = cfg_stub_find(&prev, zone);
sbin/unwind/libunbound/libunbound/libunbound.c
1114
if(elem) elem->name = strdup(zone);
sbin/unwind/libunbound/libunbound/libworker.c
889
struct sockaddr_storage* addr, socklen_t addrlen, uint8_t* zone,
sbin/unwind/libunbound/libunbound/libworker.c
901
tls_auth_name, addr, addrlen, zone, zonelen, q,
sbin/unwind/libunbound/libunbound/libworker.c
986
uint8_t* ATTR_UNUSED(zone), size_t ATTR_UNUSED(zonelen), int ATTR_UNUSED(tcp_upstream),
sbin/unwind/libunbound/libunbound/unbound.h
371
int ub_ctx_set_stub(struct ub_ctx* ctx, const char* zone, const char* addr,
sbin/unwind/libunbound/libunbound/worker.h
135
struct sockaddr_storage* addr, socklen_t addrlen, uint8_t* zone,
sbin/unwind/libunbound/libunbound/worker.h
79
struct sockaddr_storage* addr, socklen_t addrlen, uint8_t* zone,
sbin/unwind/libunbound/services/localzone.h
426
void local_zones_del_zone(struct local_zones* zones, struct local_zone* zone);
sbin/unwind/libunbound/services/outside_network.c
1071
&pend_tcp->pi->addr, comm_tcp, NULL, w->sq->zone,
sbin/unwind/libunbound/services/outside_network.c
2320
pend->sq->zone, pend->sq->zonelen, packet);
sbin/unwind/libunbound/services/outside_network.c
2608
&pend->pi->addr, comm_tcp, NULL, sq->zone,
sbin/unwind/libunbound/services/outside_network.c
2692
uint8_t* zone, size_t zonelen, int qtype, struct edns_option* opt_list,
sbin/unwind/libunbound/services/outside_network.c
2716
sq->zone = regional_alloc_init(region, zone, zonelen);
sbin/unwind/libunbound/services/outside_network.c
2717
if(!sq->zone) {
sbin/unwind/libunbound/services/outside_network.c
2985
if(!infra_host(sq->outnet->infra, &sq->addr, sq->addrlen, sq->zone,
sbin/unwind/libunbound/services/outside_network.c
3170
sq->addrlen, sq->zone, sq->zonelen);
sbin/unwind/libunbound/services/outside_network.c
3181
&pi->addr, c->type, c->ssl, sq->zone, sq->zonelen, sq->qbuf,
sbin/unwind/libunbound/services/outside_network.c
3206
sq->addrlen, sq->zone, sq->zonelen, -1,
sbin/unwind/libunbound/services/outside_network.c
3215
sq->addrlen, sq->zone, sq->zonelen, sq->qtype,
sbin/unwind/libunbound/services/outside_network.c
3230
sq->addrlen, sq->zone, sq->zonelen, sq->qtype,
sbin/unwind/libunbound/services/outside_network.c
3274
if(!infra_host(sq->outnet->infra, &sq->addr, sq->addrlen, sq->zone,
sbin/unwind/libunbound/services/outside_network.c
3367
sq->zone, sq->zonelen, sq->qtype, -1, sq->last_rtt,
sbin/unwind/libunbound/services/outside_network.c
3395
&p->pc->pif->addr, c->type, c->ssl, sq->zone, sq->zonelen,
sbin/unwind/libunbound/services/outside_network.c
3421
sq->zone, sq->zonelen, 0, (time_t)now.tv_sec)) {
sbin/unwind/libunbound/services/outside_network.c
3438
sq->zone, sq->zonelen, -1, (time_t)now.tv_sec)) {
sbin/unwind/libunbound/services/outside_network.c
3460
sq->zone, sq->zonelen, sq->qtype, roundtime,
sbin/unwind/libunbound/services/outside_network.c
3489
uint8_t* zone, size_t zonelen, struct module_qstate* qstate,
sbin/unwind/libunbound/services/outside_network.c
3518
if(!inplace_cb_query_call(env, qinfo, flags, addr, addrlen, zone,
sbin/unwind/libunbound/services/outside_network.c
3544
if(!infra_ratelimit_inc(env->infra_cache, zone,
sbin/unwind/libunbound/services/outside_network.c
3560
"delegation point", zone,
sbin/unwind/libunbound/services/outside_network.c
3567
addrlen, zone, zonelen, (int)qinfo->qtype,
sbin/unwind/libunbound/services/outside_network.c
3575
zone, zonelen, timenow);
sbin/unwind/libunbound/services/outside_network.c
3583
zone, zonelen, timenow);
sbin/unwind/libunbound/services/outside_network.h
520
uint8_t* zone;
sbin/unwind/libunbound/services/outside_network.h
707
uint8_t* zone, size_t zonelen, struct module_qstate* qstate,
sbin/unwind/libunbound/util/data/msgreply.c
1308
uint8_t* zone, size_t zonelen, struct module_qstate* qstate,
sbin/unwind/libunbound/util/data/msgreply.c
1316
qstate, addr, addrlen, zone, zonelen, region,
sbin/unwind/libunbound/util/data/msgreply.h
758
uint8_t* zone, size_t zonelen, struct module_qstate* qstate,
sbin/unwind/libunbound/util/fptr_wlist.c
363
socklen_t addrlen, uint8_t* zone, size_t zonelen, int tcp_upstream,
sbin/unwind/libunbound/util/fptr_wlist.h
215
socklen_t addrlen, uint8_t* zone, size_t zonelen, int tcp_upstream,
sbin/unwind/libunbound/util/module.h
294
socklen_t addrlen, uint8_t* zone, size_t zonelen, struct regional* region,
sbin/unwind/libunbound/util/module.h
387
uint8_t* zone, size_t zonelen, int tcp_upstream, int ssl_upstream,
sbin/unwind/libunbound/util/net_help.c
615
void log_name_addr(enum verbosity_value v, const char* str, uint8_t* zone,
sbin/unwind/libunbound/util/net_help.c
639
dname_str(zone, namebuf);
sbin/unwind/libunbound/util/net_help.h
167
void log_name_addr(enum verbosity_value v, const char* str, uint8_t* zone,
sbin/unwind/libunbound/validator/val_neg.c
1007
zone = neg_find_zone(neg, signer, signer_len, dclass);
sbin/unwind/libunbound/validator/val_neg.c
1008
if(!zone) {
sbin/unwind/libunbound/validator/val_neg.c
1009
if(!(zone = neg_create_zone(neg, signer, signer_len,
sbin/unwind/libunbound/validator/val_neg.c
1016
val_neg_zone_take_inuse(zone);
sbin/unwind/libunbound/validator/val_neg.c
1024
zone->name)) continue;
sbin/unwind/libunbound/validator/val_neg.c
1026
neg_insert_data(neg, zone, rep->rrsets[i]);
sbin/unwind/libunbound/validator/val_neg.c
1028
if(zone->tree.count == 0) {
sbin/unwind/libunbound/validator/val_neg.c
1030
neg_delete_zone(neg, zone);
sbin/unwind/libunbound/validator/val_neg.c
1122
struct val_neg_zone* zone;
sbin/unwind/libunbound/validator/val_neg.c
1128
zone = neg_closest_zone_parent(neg_cache, qname, qname_len, labs,
sbin/unwind/libunbound/validator/val_neg.c
1130
while(zone && !zone->in_use)
sbin/unwind/libunbound/validator/val_neg.c
1131
zone = zone->parent;
sbin/unwind/libunbound/validator/val_neg.c
1132
if(!zone) {
sbin/unwind/libunbound/validator/val_neg.c
1138
if(zone->nsec3_hash) {
sbin/unwind/libunbound/validator/val_neg.c
1144
(void)neg_closest_data(zone, qname, qname_len, labs, &data);
sbin/unwind/libunbound/validator/val_neg.c
1161
if(query_dname_compare(data->name, zone->name) == 0)
sbin/unwind/libunbound/validator/val_neg.c
1165
zone->dclass, flags, region, 0, 0, now);
sbin/unwind/libunbound/validator/val_neg.c
1172
neg_find_nsec3_ce(struct val_neg_zone* zone, uint8_t* qname, size_t qname_len,
sbin/unwind/libunbound/validator/val_neg.c
1193
zone->nsec3_hash, zone->nsec3_iter, zone->nsec3_salt,
sbin/unwind/libunbound/validator/val_neg.c
1194
zone->nsec3_saltlen, hashce, sizeof(hashce))))
sbin/unwind/libunbound/validator/val_neg.c
1196
if(!(b32len=nsec3_hash_to_b32(hashce, celen, zone->name,
sbin/unwind/libunbound/validator/val_neg.c
1197
zone->len, b32, sizeof(b32))))
sbin/unwind/libunbound/validator/val_neg.c
1201
data = neg_find_data(zone, b32, b32len, zone->labs+1);
sbin/unwind/libunbound/validator/val_neg.c
1217
neg_params_ok(struct val_neg_zone* zone, struct ub_packed_rrset_key* rrset)
sbin/unwind/libunbound/validator/val_neg.c
1224
return (h == zone->nsec3_hash && it == zone->nsec3_iter &&
sbin/unwind/libunbound/validator/val_neg.c
1225
slen == zone->nsec3_saltlen &&
sbin/unwind/libunbound/validator/val_neg.c
1226
(slen != 0 && zone->nsec3_salt && s
sbin/unwind/libunbound/validator/val_neg.c
1227
&& memcmp(zone->nsec3_salt, s, slen) == 0));
sbin/unwind/libunbound/validator/val_neg.c
1232
neg_nsec3_getnc(struct val_neg_zone* zone, uint8_t* hashnc, size_t nclen,
sbin/unwind/libunbound/validator/val_neg.c
1240
if(!(b32len=nsec3_hash_to_b32(hashnc, nclen, zone->name,
sbin/unwind/libunbound/validator/val_neg.c
1241
zone->len, b32, maxb32)))
sbin/unwind/libunbound/validator/val_neg.c
1243
(void)neg_closest_data(zone, b32, b32len, zone->labs+1, &data);
sbin/unwind/libunbound/validator/val_neg.c
1244
if(!data && zone->tree.count != 0) {
sbin/unwind/libunbound/validator/val_neg.c
1247
data = (struct val_neg_data*)rbtree_last(&zone->tree);
sbin/unwind/libunbound/validator/val_neg.c
1255
LDNS_RR_TYPE_NSEC3, zone->dclass, 0, region, 0, 0, now);
sbin/unwind/libunbound/validator/val_neg.c
1258
if(!neg_params_ok(zone, nc_rrset))
sbin/unwind/libunbound/validator/val_neg.c
1265
neg_nsec3_proof_ds(struct val_neg_zone* zone, uint8_t* qname, size_t qname_len,
sbin/unwind/libunbound/validator/val_neg.c
1285
if(!zone->nsec3_hash)
sbin/unwind/libunbound/validator/val_neg.c
1288
if(!topname && qlabs > zone->labs + 1)
sbin/unwind/libunbound/validator/val_neg.c
1294
if(!(data=neg_find_nsec3_ce(zone, qname, qname_len, qlabs, buf,
sbin/unwind/libunbound/validator/val_neg.c
1301
LDNS_RR_TYPE_NSEC3, zone->dclass, 0, region, 1,
sbin/unwind/libunbound/validator/val_neg.c
1305
if(!neg_params_ok(zone, ce_rrset))
sbin/unwind/libunbound/validator/val_neg.c
1316
LDNS_RR_TYPE_DS, zone->dclass, region, 1)))
sbin/unwind/libunbound/validator/val_neg.c
1333
nc_rrset = neg_nsec3_getnc(zone, hashnc, nclen, rrset_cache,
sbin/unwind/libunbound/validator/val_neg.c
1337
if(!neg_params_ok(zone, nc_rrset))
sbin/unwind/libunbound/validator/val_neg.c
1345
if(nsec3_covers(zone->name, &c, nc_rrset, 0, buf)) {
sbin/unwind/libunbound/validator/val_neg.c
1352
LDNS_RR_TYPE_DS, zone->dclass, region, 3)))
sbin/unwind/libunbound/validator/val_neg.c
1376
struct regional* region, struct dns_msg* msg, struct val_neg_zone* zone)
sbin/unwind/libunbound/validator/val_neg.c
1382
if(zone) {
sbin/unwind/libunbound/validator/val_neg.c
1383
nm = zone->name;
sbin/unwind/libunbound/validator/val_neg.c
1384
nmlen = zone->len;
sbin/unwind/libunbound/validator/val_neg.c
1385
dclass = zone->dclass;
sbin/unwind/libunbound/validator/val_neg.c
1424
struct val_neg_zone* zone;
sbin/unwind/libunbound/validator/val_neg.c
1563
zone = neg_closest_zone_parent(neg, zname, zname_len, zname_labs,
sbin/unwind/libunbound/validator/val_neg.c
1565
while(zone && !zone->in_use)
sbin/unwind/libunbound/validator/val_neg.c
1566
zone = zone->parent;
sbin/unwind/libunbound/validator/val_neg.c
1569
if(zone && topname) {
sbin/unwind/libunbound/validator/val_neg.c
1570
if(!dname_subdomain_c(zone->name, topname))
sbin/unwind/libunbound/validator/val_neg.c
1571
zone = NULL;
sbin/unwind/libunbound/validator/val_neg.c
1573
if(!zone) {
sbin/unwind/libunbound/validator/val_neg.c
1578
msg = neg_nsec3_proof_ds(zone, qinfo->qname, qinfo->qname_len,
sbin/unwind/libunbound/validator/val_neg.c
1580
if(msg && addsoa && !add_soa(rrset_cache, now, region, msg, zone)) {
sbin/unwind/libunbound/validator/val_neg.c
238
z = el->zone;
sbin/unwind/libunbound/validator/val_neg.c
311
static struct val_neg_data* neg_find_data(struct val_neg_zone* zone,
sbin/unwind/libunbound/validator/val_neg.c
322
rbtree_search(&zone->tree, lookfor.node.key);
sbin/unwind/libunbound/validator/val_neg.c
418
struct val_neg_zone* zone, uint8_t* nm, size_t nm_len, int labs)
sbin/unwind/libunbound/validator/val_neg.c
427
if(rbtree_find_less_equal(&zone->tree, &key, &res)) {
sbin/unwind/libunbound/validator/val_neg.c
459
struct val_neg_zone* zone =
sbin/unwind/libunbound/validator/val_neg.c
460
(struct val_neg_zone*)calloc(1, sizeof(*zone));
sbin/unwind/libunbound/validator/val_neg.c
461
if(!zone) {
sbin/unwind/libunbound/validator/val_neg.c
464
zone->node.key = zone;
sbin/unwind/libunbound/validator/val_neg.c
465
zone->name = memdup(nm, nm_len);
sbin/unwind/libunbound/validator/val_neg.c
466
if(!zone->name) {
sbin/unwind/libunbound/validator/val_neg.c
467
free(zone);
sbin/unwind/libunbound/validator/val_neg.c
470
zone->len = nm_len;
sbin/unwind/libunbound/validator/val_neg.c
471
zone->labs = labs;
sbin/unwind/libunbound/validator/val_neg.c
472
zone->dclass = dclass;
sbin/unwind/libunbound/validator/val_neg.c
474
rbtree_init(&zone->tree, &val_neg_data_compare);
sbin/unwind/libunbound/validator/val_neg.c
475
return zone;
sbin/unwind/libunbound/validator/val_neg.c
495
struct val_neg_zone* zone, *prev = NULL, *first = NULL;
sbin/unwind/libunbound/validator/val_neg.c
501
zone = neg_setup_zone_node(nm, nm_len, i, dclass);
sbin/unwind/libunbound/validator/val_neg.c
502
if(!zone) {
sbin/unwind/libunbound/validator/val_neg.c
514
first = zone;
sbin/unwind/libunbound/validator/val_neg.c
516
prev->parent = zone;
sbin/unwind/libunbound/validator/val_neg.c
519
prev = zone;
sbin/unwind/libunbound/validator/val_neg.c
525
void val_neg_zone_take_inuse(struct val_neg_zone* zone)
sbin/unwind/libunbound/validator/val_neg.c
527
if(!zone->in_use) {
sbin/unwind/libunbound/validator/val_neg.c
529
zone->in_use = 1;
sbin/unwind/libunbound/validator/val_neg.c
531
for(p=zone; p; p = p->parent) {
sbin/unwind/libunbound/validator/val_neg.c
540
struct val_neg_zone* zone;
sbin/unwind/libunbound/validator/val_neg.c
551
zone = neg_zone_chain(nm, nm_len, labs, dclass, parent);
sbin/unwind/libunbound/validator/val_neg.c
552
if(!zone) {
sbin/unwind/libunbound/validator/val_neg.c
557
p = zone;
sbin/unwind/libunbound/validator/val_neg.c
569
return zone;
sbin/unwind/libunbound/validator/val_neg.c
680
static void wipeout(struct val_neg_cache* neg, struct val_neg_zone* zone,
sbin/unwind/libunbound/validator/val_neg.c
707
if(!dname_subdomain_c(el->name, zone->name) ||
sbin/unwind/libunbound/validator/val_neg.c
708
!dname_subdomain_c(end, zone->name))
sbin/unwind/libunbound/validator/val_neg.c
712
if(query_dname_compare(end, zone->name) == 0) {
sbin/unwind/libunbound/validator/val_neg.c
756
struct val_neg_zone* zone, struct ub_packed_rrset_key* nsec)
sbin/unwind/libunbound/validator/val_neg.c
774
parent = neg_closest_data_parent(zone, nm, nm_len, labs);
sbin/unwind/libunbound/validator/val_neg.c
800
p->zone = zone;
sbin/unwind/libunbound/validator/val_neg.c
801
(void)rbtree_insert(&zone->tree, &p->node);
sbin/unwind/libunbound/validator/val_neg.c
831
(h != zone->nsec3_hash || it != zone->nsec3_iter ||
sbin/unwind/libunbound/validator/val_neg.c
832
slen != zone->nsec3_saltlen ||
sbin/unwind/libunbound/validator/val_neg.c
833
(slen != 0 && zone->nsec3_salt && s
sbin/unwind/libunbound/validator/val_neg.c
834
&& memcmp(zone->nsec3_salt, s, slen) != 0))) {
sbin/unwind/libunbound/validator/val_neg.c
843
free(zone->nsec3_salt);
sbin/unwind/libunbound/validator/val_neg.c
844
zone->nsec3_salt = sa;
sbin/unwind/libunbound/validator/val_neg.c
845
zone->nsec3_saltlen = slen;
sbin/unwind/libunbound/validator/val_neg.c
846
zone->nsec3_iter = it;
sbin/unwind/libunbound/validator/val_neg.c
847
zone->nsec3_hash = h;
sbin/unwind/libunbound/validator/val_neg.c
850
free(zone->nsec3_salt);
sbin/unwind/libunbound/validator/val_neg.c
851
zone->nsec3_salt = NULL;
sbin/unwind/libunbound/validator/val_neg.c
852
zone->nsec3_saltlen = 0;
sbin/unwind/libunbound/validator/val_neg.c
853
zone->nsec3_iter = it;
sbin/unwind/libunbound/validator/val_neg.c
854
zone->nsec3_hash = h;
sbin/unwind/libunbound/validator/val_neg.c
860
wipeout(neg, zone, el, nsec);
sbin/unwind/libunbound/validator/val_neg.c
897
struct val_neg_zone* zone;
sbin/unwind/libunbound/validator/val_neg.c
924
zone = neg_find_zone(neg, dname, dname_len, rrset_class);
sbin/unwind/libunbound/validator/val_neg.c
925
if(!zone) {
sbin/unwind/libunbound/validator/val_neg.c
926
if(!(zone = neg_create_zone(neg, dname, dname_len,
sbin/unwind/libunbound/validator/val_neg.c
933
val_neg_zone_take_inuse(zone);
sbin/unwind/libunbound/validator/val_neg.c
940
zone->name)) continue;
sbin/unwind/libunbound/validator/val_neg.c
942
neg_insert_data(neg, zone, rep->rrsets[i]);
sbin/unwind/libunbound/validator/val_neg.c
944
if(zone->tree.count == 0) {
sbin/unwind/libunbound/validator/val_neg.c
946
neg_delete_zone(neg, zone);
sbin/unwind/libunbound/validator/val_neg.c
960
static int neg_closest_data(struct val_neg_zone* zone,
sbin/unwind/libunbound/validator/val_neg.c
969
if(rbtree_find_less_equal(&zone->tree, &key, &r)) {
sbin/unwind/libunbound/validator/val_neg.c
987
struct val_neg_zone* zone;
sbin/unwind/libunbound/validator/val_neg.h
161
struct val_neg_zone* zone;
sbin/unwind/libunbound/validator/val_neg.h
219
uint8_t* zone);
sbin/unwind/libunbound/validator/val_neg.h
259
struct val_neg_zone* zone, struct ub_packed_rrset_key* nsec);
sbin/unwind/libunbound/validator/val_neg.h
300
void val_neg_zone_take_inuse(struct val_neg_zone* zone);
sbin/unwind/libunbound/validator/val_nsec3.c
1008
while(dname_subdomain_c(nm, flt->zone)) {
sbin/unwind/libunbound/validator/val_nsec3.c
107
uint8_t* zone;
sbin/unwind/libunbound/validator/val_nsec3.c
1249
if(!flt.zone)
sbin/unwind/libunbound/validator/val_nsec3.c
1256
flt.zone, 0, 0);
sbin/unwind/libunbound/validator/val_nsec3.c
1437
if(!flt.zone)
sbin/unwind/libunbound/validator/val_nsec3.c
1462
if(!flt.zone)
sbin/unwind/libunbound/validator/val_nsec3.c
1564
if(!flt.zone) {
sbin/unwind/libunbound/validator/val_nsec3.c
1661
if(!flt.zone)
sbin/unwind/libunbound/validator/val_nsec3.c
258
size_t nsec3_hash_to_b32(uint8_t* hash, size_t hashlen, uint8_t* zone,
sbin/unwind/libunbound/validator/val_nsec3.c
272
memmove(buf+ret, zone, zonelen);
sbin/unwind/libunbound/validator/val_nsec3.c
279
uint8_t* nm, *zone;
sbin/unwind/libunbound/validator/val_nsec3.c
284
zone = rrset->rk.dname;
sbin/unwind/libunbound/validator/val_nsec3.c
286
dname_remove_label(&zone, &zonelen);
sbin/unwind/libunbound/validator/val_nsec3.c
287
return nsec3_hash_to_b32(nm, nmlen, zone, zonelen, buf, max);
sbin/unwind/libunbound/validator/val_nsec3.c
341
if(!filter->zone) /* empty list */
sbin/unwind/libunbound/validator/val_nsec3.c
353
if(query_dname_compare(nm, filter->zone) != 0)
sbin/unwind/libunbound/validator/val_nsec3.c
420
filter->zone = NULL;
sbin/unwind/libunbound/validator/val_nsec3.c
441
if(dname_subdomain_c(qinfo->qname, nm) && (!filter->zone ||
sbin/unwind/libunbound/validator/val_nsec3.c
442
dname_subdomain_c(nm, filter->zone))) {
sbin/unwind/libunbound/validator/val_nsec3.c
448
filter->zone = nm;
sbin/unwind/libunbound/validator/val_nsec3.c
800
query_dname_compare(nm+(size_t)nm[0]+1, flt->zone) == 0) {
sbin/unwind/libunbound/validator/val_nsec3.c
868
nsec3_covers(uint8_t* zone, struct nsec3_cached_hash* hash,
sbin/unwind/libunbound/validator/val_nsec3.c
884
(size_t)*rrset->rk.dname, zone) != 0)
sbin/unwind/libunbound/validator/val_nsec3.c
965
if(nsec3_covers(flt->zone, hash, s, i_rr,
sbin/unwind/libunbound/validator/val_nsec3.h
352
size_t nsec3_hash_to_b32(uint8_t* hash, size_t hashlen, uint8_t* zone,
sbin/unwind/libunbound/validator/val_nsec3.h
426
int nsec3_covers(uint8_t* zone, struct nsec3_cached_hash* hash,
sys/arch/macppc/dev/smu.c
323
OF_getprop(node, "zone", &fan->fan.zone, sizeof fan->fan.zone);
sys/arch/macppc/dev/smu.c
379
OF_getprop(node, "zone", &fan->fan.zone, sizeof fan->fan.zone);
sys/arch/macppc/dev/smu.c
441
OF_getprop(node, "zone", &sensor->therm.zone,
sys/arch/macppc/dev/smu.c
442
sizeof sensor->therm.zone);
sys/arch/macppc/dev/thermal.c
152
if (sensor->sensor->zone == fan->fan->zone) {
sys/arch/macppc/dev/thermal.h
35
int zone;
sys/arch/macppc/dev/thermal.h
45
int zone;
sys/dev/pci/if_bnxt.c
4201
uint16_t *millisecond, uint16_t *zone)
sys/dev/pci/if_bnxt.c
4229
if (zone)
sys/dev/pci/if_bnxt.c
4230
*zone = le16toh(resp->zone);
sys/dev/pci/if_bnxt.c
4240
uint16_t millisecond, uint16_t zone)
sys/dev/pci/if_bnxt.c
4253
req.zone = htole16(zone);
sys/dev/pci/if_bnxt.c
446
uint8_t *second, uint16_t *millisecond, uint16_t *zone);
sys/dev/pci/if_bnxt.c
449
uint16_t millisecond, uint16_t zone);
sys/dev/pci/if_bnxtreg.h
61232
int16_t zone;
sys/dev/pci/if_bnxtreg.h
61331
int16_t zone;
sys/dev/pci/maestro.c
1689
salloc_insert(salloc_t pool, struct salloc_head *head, struct salloc_zone *zone,
sys/dev/pci/maestro.c
1700
if (next->addr > zone->addr)
sys/dev/pci/maestro.c
1705
if (merge && prev && prev->addr + prev->size == zone->addr) {
sys/dev/pci/maestro.c
1706
prev->size += zone->size;
sys/dev/pci/maestro.c
1707
SLIST_INSERT_HEAD(&pool->spare, zone, link);
sys/dev/pci/maestro.c
1708
zone = prev;
sys/dev/pci/maestro.c
1710
SLIST_INSERT_AFTER(prev, zone, link);
sys/dev/pci/maestro.c
1712
SLIST_INSERT_HEAD(head, zone, link);
sys/dev/pci/maestro.c
1713
if (merge && next && zone->addr + zone->size == next->addr) {
sys/dev/pci/maestro.c
1714
zone->size += next->size;
sys/dev/pci/maestro.c
1723
struct salloc_zone *zone, *uzone;
sys/dev/pci/maestro.c
1725
SLIST_FOREACH(zone, &pool->free, link)
sys/dev/pci/maestro.c
1726
if (zone->size >= size)
sys/dev/pci/maestro.c
1728
if (zone == NULL)
sys/dev/pci/maestro.c
1730
if (zone->size == size) {
sys/dev/pci/maestro.c
1731
SLIST_REMOVE(&pool->free, zone, salloc_zone, link);
sys/dev/pci/maestro.c
1732
uzone = zone;
sys/dev/pci/maestro.c
1739
uzone->addr = zone->addr;
sys/dev/pci/maestro.c
1740
zone->size -= size;
sys/dev/pci/maestro.c
1741
zone->addr += size;
sys/dev/pci/maestro.c
1750
struct salloc_zone *zone;
sys/dev/pci/maestro.c
1752
SLIST_FOREACH(zone, &pool->used, link)
sys/dev/pci/maestro.c
1753
if (zone->addr == addr)
sys/dev/pci/maestro.c
1756
if (zone == NULL)
sys/dev/pci/maestro.c
1759
SLIST_REMOVE(&pool->used, zone, salloc_zone, link);
sys/dev/pci/maestro.c
1760
salloc_insert(pool, &pool->free, zone, 1);
usr.bin/cvs/date.y
103
| zone {
usr.bin/cvs/date.y
153
zone : tZONE {
usr.bin/dig/dighost.c
468
if (af == AF_INET6 && confdata->nameservers[i].zone != 0) {
usr.bin/dig/dighost.c
471
confdata->nameservers[i].zone);
usr.bin/dig/lib/dns/message.c
2488
zoneversion_zone(const char *zone, int labelcount)
usr.bin/dig/lib/dns/message.c
2492
if (zone == NULL || labelcount == 0)
usr.bin/dig/lib/dns/message.c
2495
pos = strlen(zone);
usr.bin/dig/lib/dns/message.c
2500
if (zone[pos] == '.')
usr.bin/dig/lib/dns/message.c
2504
if (zone[pos] == '.') {
usr.bin/dig/lib/dns/message.c
2514
return (zone + pos);
usr.bin/dig/lib/dns/message.c
2668
const char *zone;
usr.bin/dig/lib/dns/message.c
2675
zone = zoneversion_zone(textname,
usr.bin/dig/lib/dns/message.c
2690
ADD_STRING(target, zone);
usr.bin/dig/lib/lwres/include/lwres/lwres.h
96
uint32_t zone;
usr.bin/dig/lib/lwres/lwconfig.c
322
addr->zone = 0;
usr.bin/dig/lib/lwres/lwconfig.c
330
unsigned long zone;
usr.bin/dig/lib/lwres/lwconfig.c
335
zone = if_nametoindex(percent);
usr.bin/dig/lib/lwres/lwconfig.c
336
if (zone != 0U) {
usr.bin/dig/lib/lwres/lwconfig.c
337
addr->zone = zone;
usr.bin/dig/lib/lwres/lwconfig.c
340
zone = strtoul(percent, &ep, 10);
usr.bin/dig/lib/lwres/lwconfig.c
342
addr->zone = zone;
usr.bin/dig/lib/lwres/lwconfig.c
346
addr->zone = 0;
usr.bin/rcs/date.y
104
| zone {
usr.bin/rcs/date.y
154
zone : tZONE {
usr.sbin/nsd/axfr.c
121
&& query->axfr_current_rrset->zone == query->axfr_zone)
usr.sbin/nsd/configparser.y
1001
cfg_parser->zone->pattern->pname = pname;
usr.sbin/nsd/configparser.y
1002
cfg_parser->zone->name = region_strdup(cfg_parser->opt->region, $2);
usr.sbin/nsd/configparser.y
1214
if(cfg_parser->zone) {
usr.sbin/nsd/configparser.y
259
| zone
usr.sbin/nsd/configparser.y
966
zone:
usr.sbin/nsd/configparser.y
970
assert(cfg_parser->zone == NULL);
usr.sbin/nsd/configparser.y
971
cfg_parser->zone = zone_options_create(cfg_parser->opt->region);
usr.sbin/nsd/configparser.y
972
cfg_parser->zone->part_of_config = 1;
usr.sbin/nsd/configparser.y
973
cfg_parser->zone->pattern = cfg_parser->pattern =
usr.sbin/nsd/configparser.y
975
cfg_parser->zone->pattern->implicit = 1;
usr.sbin/nsd/configparser.y
979
assert(cfg_parser->zone != NULL);
usr.sbin/nsd/configparser.y
980
if(cfg_parser->zone->name == NULL) {
usr.sbin/nsd/configparser.y
982
} else if(!nsd_options_insert_zone(cfg_parser->opt, cfg_parser->zone)) {
usr.sbin/nsd/configparser.y
983
yyerror("duplicate zone %s", cfg_parser->zone->name);
usr.sbin/nsd/configparser.y
984
} else if(!nsd_options_insert_pattern(cfg_parser->opt, cfg_parser->zone->pattern)) {
usr.sbin/nsd/configparser.y
985
yyerror("duplicate pattern %s", cfg_parser->zone->pattern->pname);
usr.sbin/nsd/configparser.y
988
cfg_parser->zone = NULL;
usr.sbin/nsd/dbaccess.c
101
db->region, zone->filename, strlen(zone->filename) + 1);
usr.sbin/nsd/dbaccess.c
102
zone->filename = NULL;
usr.sbin/nsd/dbaccess.c
105
if (zone->includes.count) {
usr.sbin/nsd/dbaccess.c
106
for (size_t i=0; i < zone->includes.count; i++) {
usr.sbin/nsd/dbaccess.c
109
zone->includes.paths[i],
usr.sbin/nsd/dbaccess.c
110
strlen(zone->includes.paths[i]) + 1);
usr.sbin/nsd/dbaccess.c
115
zone->includes.paths,
usr.sbin/nsd/dbaccess.c
116
zone->includes.count * sizeof(*zone->includes.paths));
usr.sbin/nsd/dbaccess.c
117
zone->includes.count = 0;
usr.sbin/nsd/dbaccess.c
118
zone->includes.paths = NULL;
usr.sbin/nsd/dbaccess.c
123
namedb_zone_delete(namedb_type* db, zone_type* zone)
usr.sbin/nsd/dbaccess.c
126
radix_delete(db->zonetree, zone->node);
usr.sbin/nsd/dbaccess.c
129
if(zone->apex) {
usr.sbin/nsd/dbaccess.c
130
zone->apex->usage --;
usr.sbin/nsd/dbaccess.c
131
zone->apex->is_apex = 0;
usr.sbin/nsd/dbaccess.c
132
if(zone->apex->usage == 0) {
usr.sbin/nsd/dbaccess.c
134
domain_table_deldomain(db, zone->apex);
usr.sbin/nsd/dbaccess.c
141
if(zone->soa_nx_rrset) {
usr.sbin/nsd/dbaccess.c
142
region_recycle(db->region, zone->soa_nx_rrset->rrs[0],
usr.sbin/nsd/dbaccess.c
143
sizeof(rr_type)+zone->soa_nx_rrset->rrs[0]->rdlength);
usr.sbin/nsd/dbaccess.c
145
region_recycle(db->region, zone->soa_nx_rrset->rrs,
usr.sbin/nsd/dbaccess.c
148
region_recycle(db->region, zone->soa_nx_rrset,
usr.sbin/nsd/dbaccess.c
156
hash_tree_delete(db->region, zone->nsec3tree);
usr.sbin/nsd/dbaccess.c
157
hash_tree_delete(db->region, zone->hashtree);
usr.sbin/nsd/dbaccess.c
158
hash_tree_delete(db->region, zone->wchashtree);
usr.sbin/nsd/dbaccess.c
159
hash_tree_delete(db->region, zone->dshashtree);
usr.sbin/nsd/dbaccess.c
161
zone_ixfr_free(zone->ixfr);
usr.sbin/nsd/dbaccess.c
162
namedb_zone_free_filenames(db, zone);
usr.sbin/nsd/dbaccess.c
163
if(zone->logstr)
usr.sbin/nsd/dbaccess.c
164
region_recycle(db->region, zone->logstr,
usr.sbin/nsd/dbaccess.c
165
strlen(zone->logstr)+1);
usr.sbin/nsd/dbaccess.c
166
region_recycle(db->region, zone, sizeof(zone_type));
usr.sbin/nsd/dbaccess.c
229
namedb_read_zonefile(struct nsd* nsd, struct zone* zone, udb_base* taskudb,
usr.sbin/nsd/dbaccess.c
238
if(!nsd->db || !zone || !zone->opts || !zone->opts->pattern->zonefile)
usr.sbin/nsd/dbaccess.c
242
fname = config_make_zonefile(zone->opts, nsd);
usr.sbin/nsd/dbaccess.c
246
if(zone_is_slave(zone->opts)) {
usr.sbin/nsd/dbaccess.c
260
if(taskudb) task_new_soainfo(taskudb, last_task, zone, 0);
usr.sbin/nsd/dbaccess.c
263
const char* zone_fname = zone->filename;
usr.sbin/nsd/dbaccess.c
264
struct timespec zone_mtime = zone->mtime;
usr.sbin/nsd/dbaccess.c
281
for (size_t i=0; i < zone->includes.count; i++) {
usr.sbin/nsd/dbaccess.c
282
if (!file_get_mtime(zone->includes.paths[i], &include_mtime, &nonexist)) {
usr.sbin/nsd/dbaccess.c
298
if(ixfr_create_from_difference(zone, fname,
usr.sbin/nsd/dbaccess.c
300
ixfrcr = ixfr_create_start(zone, fname,
usr.sbin/nsd/dbaccess.c
301
zone->opts->pattern->ixfr_size, 0);
usr.sbin/nsd/dbaccess.c
308
namedb_zone_free_filenames(nsd->db, zone);
usr.sbin/nsd/dbaccess.c
309
zone->filename = region_strdup(nsd->db->region, fname);
usr.sbin/nsd/dbaccess.c
313
nsec3_clear_precompile(nsd->db, zone);
usr.sbin/nsd/dbaccess.c
314
zone->nsec3_param = NULL;
usr.sbin/nsd/dbaccess.c
316
delete_zone_rrs(nsd->db, zone);
usr.sbin/nsd/dbaccess.c
318
zone->opts->name, fname));
usr.sbin/nsd/dbaccess.c
319
errors = zonec_read(nsd->db, nsd->db->domains, zone->opts->name, fname, zone);
usr.sbin/nsd/dbaccess.c
322
zone->opts->name, fname, errors);
usr.sbin/nsd/dbaccess.c
324
zone->is_ok = 1;
usr.sbin/nsd/dbaccess.c
326
nsec3_clear_precompile(nsd->db, zone);
usr.sbin/nsd/dbaccess.c
327
zone->nsec3_param = NULL;
usr.sbin/nsd/dbaccess.c
329
delete_zone_rrs(nsd->db, zone);
usr.sbin/nsd/dbaccess.c
330
namedb_zone_free_filenames(nsd->db, zone);
usr.sbin/nsd/dbaccess.c
331
if(zone->logstr)
usr.sbin/nsd/dbaccess.c
332
region_recycle(nsd->db->region, zone->logstr,
usr.sbin/nsd/dbaccess.c
333
strlen(zone->logstr)+1);
usr.sbin/nsd/dbaccess.c
334
zone->logstr = NULL;
usr.sbin/nsd/dbaccess.c
337
zone->opts->name));
usr.sbin/nsd/dbaccess.c
338
zone->is_ok = 1;
usr.sbin/nsd/dbaccess.c
339
zone->is_changed = 0;
usr.sbin/nsd/dbaccess.c
341
zone->mtime = mtime;
usr.sbin/nsd/dbaccess.c
342
if(zone->logstr)
usr.sbin/nsd/dbaccess.c
343
region_recycle(nsd->db->region, zone->logstr,
usr.sbin/nsd/dbaccess.c
344
strlen(zone->logstr)+1);
usr.sbin/nsd/dbaccess.c
345
zone->logstr = NULL;
usr.sbin/nsd/dbaccess.c
347
ixfr_readup_exist(zone, nsd, fname);
usr.sbin/nsd/dbaccess.c
349
if(!ixfr_create_perform(ixfrcr, zone, 1, nsd, fname,
usr.sbin/nsd/dbaccess.c
350
zone->opts->pattern->ixfr_number)) {
usr.sbin/nsd/dbaccess.c
354
zone->opts->name, fname));
usr.sbin/nsd/dbaccess.c
357
} else if(zone_is_ixfr_enabled(zone)) {
usr.sbin/nsd/dbaccess.c
358
ixfr_read_from_file(nsd, zone, fname);
usr.sbin/nsd/dbaccess.c
361
if(taskudb) task_new_soainfo(taskudb, last_task, zone, 0);
usr.sbin/nsd/dbaccess.c
363
prehash_zone_complete(nsd->db, zone);
usr.sbin/nsd/dbaccess.c
370
zone_type* zone;
usr.sbin/nsd/dbaccess.c
373
zone = namedb_find_zone(nsd->db, dname);
usr.sbin/nsd/dbaccess.c
374
if(!zone) {
usr.sbin/nsd/dbaccess.c
375
zone = namedb_zone_create(nsd->db, dname, zopt);
usr.sbin/nsd/dbaccess.c
377
namedb_read_zonefile(nsd, zone, taskudb, last_task);
usr.sbin/nsd/dbaccess.c
56
zone_type* zone = (zone_type *) region_alloc(db->region,
usr.sbin/nsd/dbaccess.c
58
zone->node = radname_insert(db->zonetree, dname_name(dname),
usr.sbin/nsd/dbaccess.c
59
dname->name_size, zone);
usr.sbin/nsd/dbaccess.c
60
assert(zone->node);
usr.sbin/nsd/dbaccess.c
61
zone->apex = domain_table_insert(db->domains, dname);
usr.sbin/nsd/dbaccess.c
62
zone->apex->usage++; /* the zone.apex reference */
usr.sbin/nsd/dbaccess.c
63
zone->apex->is_apex = 1;
usr.sbin/nsd/dbaccess.c
64
zone->soa_rrset = NULL;
usr.sbin/nsd/dbaccess.c
65
zone->soa_nx_rrset = NULL;
usr.sbin/nsd/dbaccess.c
66
zone->ns_rrset = NULL;
usr.sbin/nsd/dbaccess.c
68
zone->nsec3_param = NULL;
usr.sbin/nsd/dbaccess.c
69
zone->nsec3_last = NULL;
usr.sbin/nsd/dbaccess.c
70
zone->nsec3tree = NULL;
usr.sbin/nsd/dbaccess.c
71
zone->hashtree = NULL;
usr.sbin/nsd/dbaccess.c
72
zone->wchashtree = NULL;
usr.sbin/nsd/dbaccess.c
73
zone->dshashtree = NULL;
usr.sbin/nsd/dbaccess.c
75
zone->opts = zo;
usr.sbin/nsd/dbaccess.c
76
zone->ixfr = NULL;
usr.sbin/nsd/dbaccess.c
77
zone->filename = NULL;
usr.sbin/nsd/dbaccess.c
78
zone->includes.count = 0;
usr.sbin/nsd/dbaccess.c
79
zone->includes.paths = NULL;
usr.sbin/nsd/dbaccess.c
80
zone->logstr = NULL;
usr.sbin/nsd/dbaccess.c
81
zone->mtime.tv_sec = 0;
usr.sbin/nsd/dbaccess.c
82
zone->mtime.tv_nsec = 0;
usr.sbin/nsd/dbaccess.c
83
zone->zonestatid = 0;
usr.sbin/nsd/dbaccess.c
84
zone->is_secure = 0;
usr.sbin/nsd/dbaccess.c
85
zone->is_changed = 0;
usr.sbin/nsd/dbaccess.c
86
zone->is_updated = 0;
usr.sbin/nsd/dbaccess.c
87
zone->is_skipped = 0;
usr.sbin/nsd/dbaccess.c
88
zone->is_checked = 0;
usr.sbin/nsd/dbaccess.c
89
zone->is_bad = 0;
usr.sbin/nsd/dbaccess.c
90
zone->is_ok = 1;
usr.sbin/nsd/dbaccess.c
91
return zone;
usr.sbin/nsd/dbaccess.c
95
namedb_zone_free_filenames(namedb_type *db, zone_type* zone)
usr.sbin/nsd/dbaccess.c
97
assert(!zone->includes.paths == !zone->includes.count);
usr.sbin/nsd/dbaccess.c
99
if (zone->filename) {
usr.sbin/nsd/dbcreate.c
101
zone->opts->name, filename, strerror(errno));
usr.sbin/nsd/dbcreate.c
104
if(!print_header(zone, out, &now, logs)) {
usr.sbin/nsd/dbcreate.c
107
"the header to zone %s", zone->opts->name);
usr.sbin/nsd/dbcreate.c
110
if(!print_rrs(out, zone)) {
usr.sbin/nsd/dbcreate.c
116
zone->opts->name, filename, strerror(errno));
usr.sbin/nsd/dbcreate.c
180
zone_type* zone;
usr.sbin/nsd/dbcreate.c
185
zone = namedb_find_zone(nsd->db, (const dname_type*)zopt->node.key);
usr.sbin/nsd/dbcreate.c
186
if(!zone || !zone->apex || !zone->soa_rrset)
usr.sbin/nsd/dbcreate.c
198
if(notexist || zone->is_changed) {
usr.sbin/nsd/dbcreate.c
204
if(zone->logstr)
usr.sbin/nsd/dbcreate.c
205
strlcpy(logs, zone->logstr, sizeof(logs));
usr.sbin/nsd/dbcreate.c
209
zone->opts->name, zfile));
usr.sbin/nsd/dbcreate.c
210
if(!write_to_zonefile(zone, bakfile, logs)) {
usr.sbin/nsd/dbcreate.c
220
zone->is_changed = 0;
usr.sbin/nsd/dbcreate.c
222
zone->opts->name, zfile));
usr.sbin/nsd/dbcreate.c
228
zone->mtime = mtime;
usr.sbin/nsd/dbcreate.c
229
if(zone->filename)
usr.sbin/nsd/dbcreate.c
230
region_recycle(nsd->db->region, zone->filename,
usr.sbin/nsd/dbcreate.c
231
strlen(zone->filename)+1);
usr.sbin/nsd/dbcreate.c
232
zone->filename = region_strdup(nsd->db->region, zfile);
usr.sbin/nsd/dbcreate.c
233
if(zone->logstr)
usr.sbin/nsd/dbcreate.c
234
region_recycle(nsd->db->region, zone->logstr,
usr.sbin/nsd/dbcreate.c
235
strlen(zone->logstr)+1);
usr.sbin/nsd/dbcreate.c
236
zone->logstr = NULL;
usr.sbin/nsd/dbcreate.c
237
if(zone_is_ixfr_enabled(zone) && zone->ixfr)
usr.sbin/nsd/dbcreate.c
238
ixfr_write_to_file(zone, zfile);
usr.sbin/nsd/dbcreate.c
30
print_rrs(FILE* out, struct zone* zone)
usr.sbin/nsd/dbcreate.c
33
domain_type *domain = zone->apex;
usr.sbin/nsd/dbcreate.c
39
if(zone->soa_rrset) {
usr.sbin/nsd/dbcreate.c
41
for(i=0; i < zone->soa_rrset->rr_count; i++) {
usr.sbin/nsd/dbcreate.c
42
if(!print_rr(out, state, zone->soa_rrset->rrs[i],
usr.sbin/nsd/dbcreate.c
46
zone->opts->name);
usr.sbin/nsd/dbcreate.c
54
while(domain && domain_is_subdomain(domain, zone->apex))
usr.sbin/nsd/dbcreate.c
59
if(rrset->zone != zone || rrset == zone->soa_rrset)
usr.sbin/nsd/dbcreate.c
66
zone->opts->name);
usr.sbin/nsd/dbcreate.c
81
print_header(zone_type* zone, FILE* out, time_t* now, const char* logs)
usr.sbin/nsd/dbcreate.c
86
zone->opts->name, PACKAGE_VERSION, ctime(now));
usr.sbin/nsd/dbcreate.c
95
write_to_zonefile(zone_type* zone, const char* filename, const char* logs)
usr.sbin/nsd/difffile.c
1001
zone, softfail, ixfr_store, &collect_rrs2)) {
usr.sbin/nsd/difffile.c
1004
commit_RRset(db, zone, &collect_rrs2);
usr.sbin/nsd/difffile.c
1007
if (!dname_is_subdomain(dname, domain_dname(zone->apex))) {
usr.sbin/nsd/difffile.c
1009
domain_to_string_buf(zone->apex, zname);
usr.sbin/nsd/difffile.c
101
zone, (long long)filenumber, strerror(errno));
usr.sbin/nsd/difffile.c
1021
commit_RRset(db, zone, collect_rrs);
usr.sbin/nsd/difffile.c
1055
collect_rrs->rrset = domain_find_rrset(collect_rrs->domain, zone, collect_rrs->type);
usr.sbin/nsd/difffile.c
1057
collect_rrs->rrset = domain_find_rrset_and_prev(collect_rrs->domain, zone, collect_rrs->type, &collect_rrs->rrset_prev);
usr.sbin/nsd/difffile.c
107
diff_write_commit(const char* zone, uint32_t old_serial, uint32_t new_serial,
usr.sbin/nsd/difffile.c
1104
zone_type* zone;
usr.sbin/nsd/difffile.c
1106
zone = namedb_find_zone(db, zone_name);
usr.sbin/nsd/difffile.c
1107
if(zone) {
usr.sbin/nsd/difffile.c
1108
return zone;
usr.sbin/nsd/difffile.c
1135
zone = namedb_zone_create(db, zone_name, zopt);
usr.sbin/nsd/difffile.c
1136
return zone;
usr.sbin/nsd/difffile.c
1140
delete_zone_rrs(namedb_type* db, zone_type* zone)
usr.sbin/nsd/difffile.c
1143
domain_type *domain = zone->apex, *next;
usr.sbin/nsd/difffile.c
1146
while(domain && domain_is_subdomain(domain, zone->apex))
usr.sbin/nsd/difffile.c
1151
while((rrset = domain_find_any_rrset(domain, zone))) {
usr.sbin/nsd/difffile.c
116
zone, strerror(errno));
usr.sbin/nsd/difffile.c
1173
domain = zone->apex;
usr.sbin/nsd/difffile.c
1174
while(domain && domain_is_subdomain(domain, zone->apex))
usr.sbin/nsd/difffile.c
1193
assert(zone->soa_rrset == 0);
usr.sbin/nsd/difffile.c
1195
assert(zone->ns_rrset == 0);
usr.sbin/nsd/difffile.c
1196
assert(zone->is_secure == 0);
usr.sbin/nsd/difffile.c
1204
struct zone* zone, uint64_t* bytes,
usr.sbin/nsd/difffile.c
127
zone, (long long)filenumber, strerror(errno));
usr.sbin/nsd/difffile.c
1291
(int)seq_nr, (int)seq_total, domain_to_string(zone->apex)));
usr.sbin/nsd/difffile.c
1329
domain_to_string(zone->apex), *rr_count, *is_axfr, *delete_mode));
usr.sbin/nsd/difffile.c
1351
if(dname_compare(domain_dname(zone->apex), owner) != 0) {
usr.sbin/nsd/difffile.c
1353
domain_to_string(zone->apex));
usr.sbin/nsd/difffile.c
1378
if(!domain_find_rrset(zone->apex, zone, TYPE_SOA)) {
usr.sbin/nsd/difffile.c
1380
"in memory, skip IXFR", domain_to_string(zone->apex), serialno);
usr.sbin/nsd/difffile.c
139
zone, (long long)filenumber, strerror(errno));
usr.sbin/nsd/difffile.c
1403
ixfr_store_start(zone, ixfr_store);
usr.sbin/nsd/difffile.c
1409
domain_to_string(zone->apex), *rr_count, *is_axfr, *delete_mode));
usr.sbin/nsd/difffile.c
1429
nsec3_clear_precompile(nsd->db, zone);
usr.sbin/nsd/difffile.c
1430
zone->nsec3_param = NULL;
usr.sbin/nsd/difffile.c
1432
delete_zone_rrs(nsd->db, zone);
usr.sbin/nsd/difffile.c
1435
ixfr_store_delixfrs(zone);
usr.sbin/nsd/difffile.c
1438
domain_to_string(zone->apex), *rr_count, *is_axfr, *delete_mode));
usr.sbin/nsd/difffile.c
1454
commit_RRset(nsd->db, zone, &collect_rrs);
usr.sbin/nsd/difffile.c
1457
rrlen, zone, region, softfail, ixfr_store)) {
usr.sbin/nsd/difffile.c
1464
rrlen, zone, softfail, ixfr_store, &collect_rrs))) {
usr.sbin/nsd/difffile.c
147
zone, (long long)filenumber, strerror(errno));
usr.sbin/nsd/difffile.c
1487
commit_RRset(nsd->db, zone, &collect_rrs);
usr.sbin/nsd/difffile.c
1499
zone_type* zone = 0;
usr.sbin/nsd/difffile.c
1502
zone = domain_find_zone(db, domain);
usr.sbin/nsd/difffile.c
1503
if(zone && zone->apex == domain && zone->soa_rrset && old_serial)
usr.sbin/nsd/difffile.c
1506
retrieve_soa_rdata_serial(zone->soa_rrset->rrs[0], &memserial);
usr.sbin/nsd/difffile.c
1517
apply_ixfr_for_zone(nsd_type* nsd, zone_type* zone, FILE* in,
usr.sbin/nsd/difffile.c
153
zone, (long long)filenumber, strerror(errno));
usr.sbin/nsd/difffile.c
1530
assert(zone);
usr.sbin/nsd/difffile.c
1561
if(strcmp(zone_buf, domain_to_string(zone->apex)) != 0) {
usr.sbin/nsd/difffile.c
1563
zone_buf, domain_to_string(zone->apex));
usr.sbin/nsd/difffile.c
1592
if(!zone->is_skipped)
usr.sbin/nsd/difffile.c
1598
if(zone_is_ixfr_enabled(zone))
usr.sbin/nsd/difffile.c
1599
ixfr_store = ixfr_store_start(zone, &ixfr_store_mem);
usr.sbin/nsd/difffile.c
1606
&rr_count, zone,
usr.sbin/nsd/difffile.c
1625
prehash_zone(nsd->db, zone);
usr.sbin/nsd/difffile.c
1627
zone->is_changed = 1;
usr.sbin/nsd/difffile.c
1628
zone->is_updated = 1;
usr.sbin/nsd/difffile.c
1629
zone->is_checked = (committed == DIFF_VERIFIED);
usr.sbin/nsd/difffile.c
1630
zone->mtime.tv_sec = time_end_0;
usr.sbin/nsd/difffile.c
1631
zone->mtime.tv_nsec = time_end_1*1000;
usr.sbin/nsd/difffile.c
1632
if(zone->logstr)
usr.sbin/nsd/difffile.c
1633
region_recycle(nsd->db->region, zone->logstr,
usr.sbin/nsd/difffile.c
1634
strlen(zone->logstr)+1);
usr.sbin/nsd/difffile.c
1635
zone->logstr = region_strdup(nsd->db->region, log_buf);
usr.sbin/nsd/difffile.c
1636
namedb_zone_free_filenames(nsd->db, zone);
usr.sbin/nsd/difffile.c
164
const char* zone, uint8_t commit, struct nsd* nsd, uint64_t filenumber)
usr.sbin/nsd/difffile.c
168
assert(zone != NULL);
usr.sbin/nsd/difffile.c
1718
void task_new_soainfo(struct udb_base* udb, udb_ptr* last, struct zone* z,
usr.sbin/nsd/difffile.c
179
zone, (long long)filenumber, strerror(errno));
usr.sbin/nsd/difffile.c
1820
const dname_type* zone)
usr.sbin/nsd/difffile.c
1823
xfrd_check_catalog_consumer_zonefiles(zone);
usr.sbin/nsd/difffile.c
1826
(zone?dname_total_size(zone):0), zone)) {
usr.sbin/nsd/difffile.c
1831
TASKLIST(&e)->yesno = (zone!=NULL);
usr.sbin/nsd/difffile.c
1836
const dname_type* zone)
usr.sbin/nsd/difffile.c
184
zone, (long long)filenumber, strerror(errno));
usr.sbin/nsd/difffile.c
1841
(zone?dname_total_size(zone):0), zone)) {
usr.sbin/nsd/difffile.c
1846
TASKLIST(&e)->yesno = (zone!=NULL);
usr.sbin/nsd/difffile.c
1865
task_new_add_zone(udb_base* udb, udb_ptr* last, const char* zone,
usr.sbin/nsd/difffile.c
1868
size_t zlen = strlen(zone);
usr.sbin/nsd/difffile.c
1872
DEBUG(DEBUG_IPC,1, (LOG_INFO, "add task addzone %s %s", zone, pattern));
usr.sbin/nsd/difffile.c
1881
memcpy(p, zone, zlen+1);
usr.sbin/nsd/difffile.c
2161
zone_type* zone;
usr.sbin/nsd/difffile.c
2165
zone = namedb_find_zone(nsd->db, task->zname);
usr.sbin/nsd/difffile.c
2166
if(!zone)
usr.sbin/nsd/difffile.c
2171
nsec3_clear_precompile(nsd->db, zone);
usr.sbin/nsd/difffile.c
2172
zone->nsec3_param = NULL;
usr.sbin/nsd/difffile.c
2174
delete_zone_rrs(nsd->db, zone);
usr.sbin/nsd/difffile.c
2177
zopt = zone->opts;
usr.sbin/nsd/difffile.c
2178
namedb_zone_delete(nsd->db, zone);
usr.sbin/nsd/difffile.c
2271
zone_type* zone;
usr.sbin/nsd/difffile.c
2275
zone = namedb_find_zone(nsd->db, TASKLIST(task)->zname);
usr.sbin/nsd/difffile.c
2276
if(!zone) {
usr.sbin/nsd/difffile.c
2290
zone->is_skipped = 1;
usr.sbin/nsd/difffile.c
2295
switch(apply_ixfr_for_zone(nsd, zone, df, nsd->options, udb,
usr.sbin/nsd/difffile.c
2303
zone->is_skipped = 1;
usr.sbin/nsd/difffile.c
310
if(rrset->zone->soa_rrset == rrset) {
usr.sbin/nsd/difffile.c
311
rrset->zone->soa_rrset = 0;
usr.sbin/nsd/difffile.c
313
if(rrset->zone->ns_rrset == rrset) {
usr.sbin/nsd/difffile.c
314
rrset->zone->ns_rrset = 0;
usr.sbin/nsd/difffile.c
316
if(domain == rrset->zone->apex && rrset_rrtype(rrset) == TYPE_RRSIG) {
usr.sbin/nsd/difffile.c
319
rrset->zone->is_secure = 0;
usr.sbin/nsd/difffile.c
517
nsec3_delete_rr_trigger(namedb_type* db, rr_type* rr, zone_type* zone)
usr.sbin/nsd/difffile.c
520
if(!zone->nsec3_param)
usr.sbin/nsd/difffile.c
525
nsec3_rr_uses_params(rr, zone) &&
usr.sbin/nsd/difffile.c
526
nsec3_in_chain_count(rr->owner, zone) <= 1) {
usr.sbin/nsd/difffile.c
527
domain_type* prev = nsec3_chain_find_prev(zone, rr->owner);
usr.sbin/nsd/difffile.c
532
if(rr->owner == zone->nsec3_last)
usr.sbin/nsd/difffile.c
533
zone->nsec3_last = prev;
usr.sbin/nsd/difffile.c
535
zone_del_domain_in_hash_tree(zone->nsec3tree,
usr.sbin/nsd/difffile.c
540
else nsec3_clear_precompile(db, zone);
usr.sbin/nsd/difffile.c
544
else if(rr->type == TYPE_NSEC3PARAM && rr == zone->nsec3_param) {
usr.sbin/nsd/difffile.c
546
nsec3_clear_precompile(db, zone);
usr.sbin/nsd/difffile.c
548
nsec3_find_zone_param(db, zone, rr, 0);
usr.sbin/nsd/difffile.c
550
if(!zone->nsec3_param)
usr.sbin/nsd/difffile.c
552
nsec3_precompile_newparam(db, zone);
usr.sbin/nsd/difffile.c
558
nsec3_rrsets_changed_remove_prehash(domain_type* domain, zone_type* zone)
usr.sbin/nsd/difffile.c
563
if(nsec3_domain_part_of_zone(domain, zone) && domain->nsec3 &&
usr.sbin/nsd/difffile.c
566
!nsec3_condition_hash(domain, zone)) {
usr.sbin/nsd/difffile.c
572
zone_del_domain_in_hash_tree(zone->hashtree,
usr.sbin/nsd/difffile.c
574
zone_del_domain_in_hash_tree(zone->wchashtree,
usr.sbin/nsd/difffile.c
577
if(domain != zone->apex && domain->nsec3 &&
usr.sbin/nsd/difffile.c
580
(!domain->parent || nsec3_domain_part_of_zone(domain->parent, zone)) &&
usr.sbin/nsd/difffile.c
581
!nsec3_condition_dshash(domain, zone)) {
usr.sbin/nsd/difffile.c
586
zone_del_domain_in_hash_tree(zone->dshashtree,
usr.sbin/nsd/difffile.c
59
diff_write_packet(const char* zone, const char* pat, uint32_t old_serial,
usr.sbin/nsd/difffile.c
594
zone_type* zone)
usr.sbin/nsd/difffile.c
596
if(!zone->nsec3_param)
usr.sbin/nsd/difffile.c
600
&& nsec3_condition_hash(domain, zone)) {
usr.sbin/nsd/difffile.c
602
nsec3_precompile_domain(db, domain, zone, tmpregion);
usr.sbin/nsd/difffile.c
607
&& nsec3_condition_dshash(domain, zone)) {
usr.sbin/nsd/difffile.c
608
nsec3_precompile_domain_ds(db, domain, zone);
usr.sbin/nsd/difffile.c
615
zone_type* zone, uint16_t type)
usr.sbin/nsd/difffile.c
617
if(!zone->nsec3_param)
usr.sbin/nsd/difffile.c
619
nsec3_rrsets_changed_remove_prehash(domain, zone);
usr.sbin/nsd/difffile.c
623
nsec3_rrsets_changed_add_prehash(db, domain, zone);
usr.sbin/nsd/difffile.c
630
nsec3_rrsets_changed_add_prehash(db, d, zone);
usr.sbin/nsd/difffile.c
637
nsec3_add_rr_trigger(namedb_type* db, rr_type* rr, zone_type* zone)
usr.sbin/nsd/difffile.c
641
if(zone->nsec3_param && rr->type == TYPE_NSEC3 &&
usr.sbin/nsd/difffile.c
643
&& nsec3_rr_uses_params(rr, zone)) {
usr.sbin/nsd/difffile.c
644
if(!zone->nsec3_last) {
usr.sbin/nsd/difffile.c
648
nsec3_precompile_newparam(db, zone);
usr.sbin/nsd/difffile.c
651
nsec3_precompile_nsec3rr(db, rr->owner, zone);
usr.sbin/nsd/difffile.c
654
nsec3_rrsets_changed_remove_prehash(rr->owner, zone);
usr.sbin/nsd/difffile.c
657
} else if(!zone->nsec3_param && rr->type == TYPE_NSEC3PARAM) {
usr.sbin/nsd/difffile.c
659
nsec3_find_zone_param(db, zone, NULL, 0);
usr.sbin/nsd/difffile.c
66
zone, (long long)filenumber, strerror(errno));
usr.sbin/nsd/difffile.c
660
if(!zone->nsec3_param)
usr.sbin/nsd/difffile.c
662
nsec3_zone_trees_create(db->region, zone);
usr.sbin/nsd/difffile.c
663
nsec3_precompile_newparam(db, zone);
usr.sbin/nsd/difffile.c
669
nsec3_add_rrset_trigger(namedb_type* db, domain_type* domain, zone_type* zone,
usr.sbin/nsd/difffile.c
673
if(!zone->nsec3_param)
usr.sbin/nsd/difffile.c
677
nsec3_rrsets_changed_add_prehash(db, domain, zone);
usr.sbin/nsd/difffile.c
680
nsec3_rrsets_changed_remove_prehash(domain, zone);
usr.sbin/nsd/difffile.c
688
nsec3_rrsets_changed_remove_prehash(d, zone);
usr.sbin/nsd/difffile.c
705
buffer_type* packet, size_t rdatalen, zone_type *zone,
usr.sbin/nsd/difffile.c
714
if (!dname_is_subdomain(dname, domain_dname(zone->apex))) {
usr.sbin/nsd/difffile.c
716
domain_to_string_buf(zone->apex, zname);
usr.sbin/nsd/difffile.c
733
rrset = domain_find_rrset(domain, zone, type);
usr.sbin/nsd/difffile.c
735
rrset = domain_find_rrset_and_prev(domain, zone, type, &rrset_prev);
usr.sbin/nsd/difffile.c
75
zone, strerror(errno));
usr.sbin/nsd/difffile.c
775
if(rrnum == -1 && type == TYPE_SOA && domain == zone->apex
usr.sbin/nsd/difffile.c
786
nsec3_delete_rr_trigger(db, rrset->rrs[rrnum], zone);
usr.sbin/nsd/difffile.c
788
if(domain == zone->apex && type == TYPE_RRSIG &&
usr.sbin/nsd/difffile.c
802
nsec3_delete_rrset_trigger(db, domain, zone, type);
usr.sbin/nsd/difffile.c
843
if(domain == zone->apex) {
usr.sbin/nsd/difffile.c
847
zone->soa_rrset = rrset;
usr.sbin/nsd/difffile.c
849
zone->ns_rrset = rrset;
usr.sbin/nsd/difffile.c
86
!write_str(df, zone) ||
usr.sbin/nsd/difffile.c
864
zone->is_secure = 0;
usr.sbin/nsd/difffile.c
872
zone);
usr.sbin/nsd/difffile.c
880
commit_RRset(namedb_type* db, zone_type* zone, struct collect_rrs* collect_rrs)
usr.sbin/nsd/difffile.c
89
zone, (long long)filenumber, strerror(errno));
usr.sbin/nsd/difffile.c
899
rrset->zone = zone;
usr.sbin/nsd/difffile.c
910
nsec3_add_rrset_trigger(db, collect_rrs->domain, zone, collect_rrs->type);
usr.sbin/nsd/difffile.c
914
nsec3_rrsets_changed_add_prehash(db, p, zone);
usr.sbin/nsd/difffile.c
960
if (collect_rrs->domain == zone->apex)
usr.sbin/nsd/difffile.c
971
nsec3_add_rr_trigger(db, collect_rrs->rrs[i], zone);
usr.sbin/nsd/difffile.c
981
buffer_type* packet, size_t rdatalen, zone_type *zone,
usr.sbin/nsd/difffile.h
136
void task_new_soainfo(udb_base* udb, udb_ptr* last, struct zone* z, enum soainfo_hint hint);
usr.sbin/nsd/difffile.h
140
const dname_type* zone);
usr.sbin/nsd/difffile.h
142
const dname_type* zone);
usr.sbin/nsd/difffile.h
144
void task_new_add_zone(udb_base* udb, udb_ptr* last, const char* zone,
usr.sbin/nsd/difffile.h
156
int task_new_apply_xfr(udb_base* udb, udb_ptr* last, const dname_type* zone,
usr.sbin/nsd/difffile.h
32
void diff_write_packet(const char* zone, const char* pat, uint32_t old_serial,
usr.sbin/nsd/difffile.h
40
void diff_write_commit(const char* zone, uint32_t old_serial,
usr.sbin/nsd/difffile.h
48
void diff_update_commit(const char* zone,
usr.sbin/nsd/difffile.h
59
void delete_zone_rrs(namedb_type* db, zone_type* zone);
usr.sbin/nsd/difffile.h
63
buffer_type* packet, size_t rdatalen, zone_type *zone,
usr.sbin/nsd/difffile.h
69
buffer_type* packet, size_t rdatalen, zone_type *zone,
usr.sbin/nsd/difffile.h
74
int apply_ixfr_for_zone(struct nsd* nsd, zone_type* zone, FILE* in,
usr.sbin/nsd/dnstap/dnstap.c
834
int is_tcp, uint8_t* zone, size_t zonelen, uint8_t* pkt, size_t pktlen)
usr.sbin/nsd/dnstap/dnstap.c
844
if(zone) {
usr.sbin/nsd/dnstap/dnstap.c
846
dm.m.query_zone.data = zone;
usr.sbin/nsd/dnstap/dnstap.c
880
int is_tcp, uint8_t* zone, size_t zonelen, uint8_t* pkt, size_t pktlen)
usr.sbin/nsd/dnstap/dnstap.c
890
if(zone) {
usr.sbin/nsd/dnstap/dnstap.c
892
dm.m.query_zone.data = zone;
usr.sbin/nsd/dnstap/dnstap.h
143
int is_tcp, uint8_t* zone, size_t zonelen, uint8_t* pkt, size_t pktlen);
usr.sbin/nsd/dnstap/dnstap.h
165
int is_tcp, uint8_t* zone, size_t zonelen, uint8_t* pkt, size_t pktlen);
usr.sbin/nsd/dnstap/dnstap_collector.c
218
uint8_t* zone;
usr.sbin/nsd/dnstap/dnstap_collector.c
238
zone = NULL;
usr.sbin/nsd/dnstap/dnstap_collector.c
242
zone = buffer_current(buf);
usr.sbin/nsd/dnstap/dnstap_collector.c
248
dt_msg_send_auth_response(dt_env, &local_addr, &addr, is_tcp, zone,
usr.sbin/nsd/dnstap/dnstap_collector.c
251
dt_msg_send_auth_query(dt_env, &local_addr, &addr, is_tcp, zone,
usr.sbin/nsd/dnstap/dnstap_collector.c
474
struct zone* zone)
usr.sbin/nsd/dnstap/dnstap_collector.c
494
if(zone && zone->apex && domain_dname(zone->apex)) {
usr.sbin/nsd/dnstap/dnstap_collector.c
495
if(!buffer_available(buf, 4 + domain_dname(zone->apex)->name_size))
usr.sbin/nsd/dnstap/dnstap_collector.c
497
buffer_write_u32(buf, domain_dname(zone->apex)->name_size);
usr.sbin/nsd/dnstap/dnstap_collector.c
498
buffer_write(buf, dname_name(domain_dname(zone->apex)),
usr.sbin/nsd/dnstap/dnstap_collector.c
499
domain_dname(zone->apex)->name_size);
usr.sbin/nsd/dnstap/dnstap_collector.c
582
struct zone* zone)
usr.sbin/nsd/dnstap/dnstap_collector.c
591
is_tcp, packet, zone))
usr.sbin/nsd/dnstap/dnstap_collector.h
17
struct zone;
usr.sbin/nsd/dnstap/dnstap_collector.h
94
struct zone* zone);
usr.sbin/nsd/ixfr.c
1078
if(!ixfr_store->zone->ixfr)
usr.sbin/nsd/ixfr.c
1079
ixfr_store->zone->ixfr = zone_ixfr_create(nsd);
usr.sbin/nsd/ixfr.c
1080
zone_ixfr_make_space(ixfr_store->zone->ixfr, ixfr_store->zone,
usr.sbin/nsd/ixfr.c
1086
zone_ixfr_add(ixfr_store->zone->ixfr, ixfr_store->data, 1,
usr.sbin/nsd/ixfr.c
1087
ixfr_store->zone->opts->name);
usr.sbin/nsd/ixfr.c
1124
static void store_soa(uint8_t* soa, struct zone* zone, uint32_t ttl,
usr.sbin/nsd/ixfr.c
1130
memmove(sp, dname_name(domain_dname(zone->apex)),
usr.sbin/nsd/ixfr.c
1131
domain_dname(zone->apex)->name_size);
usr.sbin/nsd/ixfr.c
1132
sp += domain_dname(zone->apex)->name_size;
usr.sbin/nsd/ixfr.c
1175
sz = domain_dname(ixfr_store->zone->apex)->name_size;
usr.sbin/nsd/ixfr.c
1204
store_soa(ixfr_store->data->newsoa, ixfr_store->zone, ttl,
usr.sbin/nsd/ixfr.c
1228
zone_ixfr_make_space(ixfr_store->zone->ixfr, ixfr_store->zone,
usr.sbin/nsd/ixfr.c
1235
sz = domain_dname(ixfr_store->zone->apex)->name_size;
usr.sbin/nsd/ixfr.c
1264
store_soa(ixfr_store->data->oldsoa, ixfr_store->zone, ttl,
usr.sbin/nsd/ixfr.c
1322
zone_ixfr_make_space(ixfr_store->zone->ixfr, ixfr_store->zone,
usr.sbin/nsd/ixfr.c
1477
int zone_is_ixfr_enabled(struct zone* zone)
usr.sbin/nsd/ixfr.c
1479
return zone->opts->pattern->store_ixfr;
usr.sbin/nsd/ixfr.c
1537
void ixfr_store_delixfrs(struct zone* zone)
usr.sbin/nsd/ixfr.c
1539
if(!zone)
usr.sbin/nsd/ixfr.c
1541
zone_ixfr_clear(zone->ixfr);
usr.sbin/nsd/ixfr.c
1569
void zone_ixfr_make_space(struct zone_ixfr* ixfr, struct zone* zone,
usr.sbin/nsd/ixfr.c
1575
if(zone->opts->pattern->ixfr_number == 0) {
usr.sbin/nsd/ixfr.c
1582
while(ixfr->data->count >= zone->opts->pattern->ixfr_number) {
usr.sbin/nsd/ixfr.c
1586
if(zone->opts->pattern->ixfr_size == 0) {
usr.sbin/nsd/ixfr.c
1596
zone->opts->pattern->ixfr_size) {
usr.sbin/nsd/ixfr.c
1603
zone->opts->pattern->ixfr_size) {
usr.sbin/nsd/ixfr.c
1660
static int ixfr_target_number_files(struct zone* zone)
usr.sbin/nsd/ixfr.c
1663
if(!zone->ixfr || !zone->ixfr->data)
usr.sbin/nsd/ixfr.c
1665
if(!zone_is_ixfr_enabled(zone))
usr.sbin/nsd/ixfr.c
1668
dest_num_files = (int)zone->opts->pattern->ixfr_number;
usr.sbin/nsd/ixfr.c
1670
if(dest_num_files > (int)zone->ixfr->data->count)
usr.sbin/nsd/ixfr.c
1671
dest_num_files = (int)zone->ixfr->data->count;
usr.sbin/nsd/ixfr.c
1811
static void ixfr_delete_rest_files(struct zone* zone, struct ixfr_data* from,
usr.sbin/nsd/ixfr.c
1818
(void)ixfr_unlink_it_ctmp(zone->opts->name, zfile,
usr.sbin/nsd/ixfr.c
1822
data = ixfr_data_prev(zone->ixfr, data, &prevcount);
usr.sbin/nsd/ixfr.c
1826
void ixfr_delete_superfluous_files(struct zone* zone, const char* zfile,
usr.sbin/nsd/ixfr.c
1832
while(ixfr_unlink_it(zone->opts->name, zfile, i, 1)) {
usr.sbin/nsd/ixfr.c
1857
static void ixfr_delete_memory_items(struct zone* zone, int dest_num_files)
usr.sbin/nsd/ixfr.c
1859
if(!zone->ixfr || !zone->ixfr->data)
usr.sbin/nsd/ixfr.c
1861
if(dest_num_files == (int)zone->ixfr->data->count)
usr.sbin/nsd/ixfr.c
1863
if(dest_num_files > (int)zone->ixfr->data->count) {
usr.sbin/nsd/ixfr.c
1869
while(dest_num_files < (int)zone->ixfr->data->count) {
usr.sbin/nsd/ixfr.c
1870
zone_ixfr_remove_oldest(zone->ixfr);
usr.sbin/nsd/ixfr.c
1875
static int ixfr_rename_files(struct zone* zone, const char* zfile,
usr.sbin/nsd/ixfr.c
1881
if(!zone->ixfr || !zone->ixfr->data)
usr.sbin/nsd/ixfr.c
1885
data = ixfr_data_first(zone->ixfr);
usr.sbin/nsd/ixfr.c
1901
(void)ixfr_unlink_it_temp(zone->opts->name, zfile,
usr.sbin/nsd/ixfr.c
1906
if(!ixfr_rename_it(zone->opts->name, zfile, data->file_num, 0,
usr.sbin/nsd/ixfr.c
1910
ixfr_delete_rest_files(zone, data, zfile, 1);
usr.sbin/nsd/ixfr.c
1917
data = ixfr_data_next(zone->ixfr, data);
usr.sbin/nsd/ixfr.c
1918
if(count++ > zone->ixfr->data->count+12) {
usr.sbin/nsd/ixfr.c
1920
ixfr_delete_rest_files(zone, data, zfile, 1);
usr.sbin/nsd/ixfr.c
1933
(void)ixfr_unlink_it(zone->opts->name, zfile,
usr.sbin/nsd/ixfr.c
1937
if(!ixfr_rename_it(zone->opts->name, zfile, data->file_num, 1, destnum, 0)) {
usr.sbin/nsd/ixfr.c
1939
ixfr_delete_rest_files(zone, data, zfile, 1);
usr.sbin/nsd/ixfr.c
1947
data = ixfr_data_prev(zone->ixfr, data, &prevcount);
usr.sbin/nsd/ixfr.c
1953
static int ixfr_write_file_header(struct zone* zone, struct ixfr_data* data,
usr.sbin/nsd/ixfr.c
1958
if(!fprintf(out, "; zone %s\n", zone->opts->name))
usr.sbin/nsd/ixfr.c
1974
static int parse_wirerr_into_temp(struct zone* zone, char* fname,
usr.sbin/nsd/ixfr.c
1989
log_msg(LOG_ERR, "failed to write zone %s IXFR data %s: failed to parse dname", zone->opts->name, fname);
usr.sbin/nsd/ixfr.c
1994
log_msg(LOG_ERR, "failed to write zone %s IXFR data %s: buffer too short", zone->opts->name, fname);
usr.sbin/nsd/ixfr.c
2006
log_msg(LOG_ERR, "failed to write zone %s IXFR data %s: buffer too short for rdatalen", zone->opts->name, fname);
usr.sbin/nsd/ixfr.c
2014
log_msg(LOG_ERR, "failed to write zone %s IXFR data %s: cannot parse rdata %s %s %s", zone->opts->name, fname,
usr.sbin/nsd/ixfr.c
2044
static int ixfr_write_rr(struct zone* zone, FILE* out, char* fname,
usr.sbin/nsd/ixfr.c
2050
if(!parse_wirerr_into_temp(zone, fname, temp, buf, len, &dname, &rr)) {
usr.sbin/nsd/ixfr.c
2057
log_msg(LOG_ERR, "failed to write zone %s IXFR data %s: cannot spool RR string into buffer", zone->opts->name, fname);
usr.sbin/nsd/ixfr.c
2065
log_msg(LOG_ERR, "failed to write zone %s IXFR data %s: cannot print RR string to file: %s", zone->opts->name, fname, strerror(errno));
usr.sbin/nsd/ixfr.c
2074
static int ixfr_write_rrs(struct zone* zone, FILE* out, char* fname,
usr.sbin/nsd/ixfr.c
2086
if(!ixfr_write_rr(zone, out, fname, buf+current, rrlen,
usr.sbin/nsd/ixfr.c
2095
static int ixfr_write_file_data(struct zone* zone, struct ixfr_data* data,
usr.sbin/nsd/ixfr.c
2104
if(!ixfr_write_rrs(zone, out, fname, data->newsoa, data->newsoa_len,
usr.sbin/nsd/ixfr.c
2110
if(!ixfr_write_rrs(zone, out, fname, data->oldsoa, data->oldsoa_len,
usr.sbin/nsd/ixfr.c
2116
if(!ixfr_write_rrs(zone, out, fname, data->del, data->del_len,
usr.sbin/nsd/ixfr.c
2122
if(!ixfr_write_rrs(zone, out, fname, data->add, data->add_len,
usr.sbin/nsd/ixfr.c
2133
int ixfr_write_file(struct zone* zone, struct ixfr_data* data,
usr.sbin/nsd/ixfr.c
2140
zone->opts->name, ixfrfile));
usr.sbin/nsd/ixfr.c
2144
zone->opts->name, ixfrfile, strerror(errno));
usr.sbin/nsd/ixfr.c
2148
if(!ixfr_write_file_header(zone, data, out)) {
usr.sbin/nsd/ixfr.c
2150
zone->opts->name, ixfrfile, strerror(errno));
usr.sbin/nsd/ixfr.c
2154
if(!ixfr_write_file_data(zone, data, out, ixfrfile)) {
usr.sbin/nsd/ixfr.c
2165
static void ixfr_write_files(struct zone* zone, const char* zfile)
usr.sbin/nsd/ixfr.c
2170
if(!zone->ixfr || !zone->ixfr->data)
usr.sbin/nsd/ixfr.c
2174
data = ixfr_data_last(zone->ixfr);
usr.sbin/nsd/ixfr.c
2177
if(!ixfr_write_file(zone, data, zfile, num)) {
usr.sbin/nsd/ixfr.c
2189
ixfr_delete_rest_files(zone, data, zfile, 0);
usr.sbin/nsd/ixfr.c
2193
data = ixfr_data_prev(zone->ixfr, data, &prevcount);
usr.sbin/nsd/ixfr.c
2197
void ixfr_write_to_file(struct zone* zone, const char* zfile)
usr.sbin/nsd/ixfr.c
2204
dest_num_files = ixfr_target_number_files(zone);
usr.sbin/nsd/ixfr.c
2207
ixfr_delete_superfluous_files(zone, zfile, dest_num_files);
usr.sbin/nsd/ixfr.c
2210
ixfr_delete_memory_items(zone, dest_num_files);
usr.sbin/nsd/ixfr.c
2213
if(!ixfr_rename_files(zone, zfile, dest_num_files))
usr.sbin/nsd/ixfr.c
2217
ixfr_write_files(zone, zfile);
usr.sbin/nsd/ixfr.c
2284
struct zone* tempzone, struct rr* rr)
usr.sbin/nsd/ixfr.c
2330
static int ixfr_data_readnewsoa(struct ixfr_data* data, struct zone* zone,
usr.sbin/nsd/ixfr.c
2332
struct domain_table* temptable, struct zone* tempzone,
usr.sbin/nsd/ixfr.c
2339
zone->opts->name);
usr.sbin/nsd/ixfr.c
2344
zone->opts->name);
usr.sbin/nsd/ixfr.c
2347
if(!zone->apex) {
usr.sbin/nsd/ixfr.c
2349
zone->opts->name);
usr.sbin/nsd/ixfr.c
2352
if(dname_compare(domain_dname(zone->apex), domain_dname(rr->owner)) != 0) {
usr.sbin/nsd/ixfr.c
2354
zone->opts->name, domain_to_string(rr->owner));
usr.sbin/nsd/ixfr.c
2360
zone->opts->name, data->newserial,
usr.sbin/nsd/ixfr.c
2368
zone->opts->name);
usr.sbin/nsd/ixfr.c
2370
zone->opts->name);
usr.sbin/nsd/ixfr.c
2380
static int ixfr_data_readoldsoa(struct ixfr_data* data, struct zone* zone,
usr.sbin/nsd/ixfr.c
2382
struct domain_table* temptable, struct zone* tempzone,
usr.sbin/nsd/ixfr.c
2388
zone->opts->name);
usr.sbin/nsd/ixfr.c
2393
zone->opts->name);
usr.sbin/nsd/ixfr.c
2396
if(!zone->apex) {
usr.sbin/nsd/ixfr.c
2398
zone->opts->name);
usr.sbin/nsd/ixfr.c
2401
if(dname_compare(domain_dname(zone->apex), domain_dname(rr->owner)) != 0) {
usr.sbin/nsd/ixfr.c
2403
zone->opts->name, domain_to_string(rr->owner));
usr.sbin/nsd/ixfr.c
2409
zone->opts->name);
usr.sbin/nsd/ixfr.c
2420
static int ixfr_data_readdel(struct ixfr_data* data, struct zone* zone,
usr.sbin/nsd/ixfr.c
2422
struct domain_table* temptable, struct zone* tempzone)
usr.sbin/nsd/ixfr.c
2427
zone->opts->name);
usr.sbin/nsd/ixfr.c
2444
static int ixfr_data_readadd(struct ixfr_data* data, struct zone* zone,
usr.sbin/nsd/ixfr.c
2446
struct domain_table* temptable, struct zone* tempzone)
usr.sbin/nsd/ixfr.c
2451
zone->opts->name);
usr.sbin/nsd/ixfr.c
2465
struct zone *zone;
usr.sbin/nsd/ixfr.c
2470
struct zone *tempzone;
usr.sbin/nsd/ixfr.c
2517
"rdata of %s %s %s", state->zone->opts->name,
usr.sbin/nsd/ixfr.c
2531
if (!ixfr_data_readnewsoa(state->data, state->zone, rr, parser,
usr.sbin/nsd/ixfr.c
2536
if(!ixfr_data_readoldsoa(state->data, state->zone, rr, parser,
usr.sbin/nsd/ixfr.c
2541
switch (ixfr_data_readdel(state->data, state->zone, rr, parser,
usr.sbin/nsd/ixfr.c
2554
switch (ixfr_data_readadd(state->data, state->zone, rr, parser,
usr.sbin/nsd/ixfr.c
2591
static int ixfr_data_read(struct nsd* nsd, struct zone* zone,
usr.sbin/nsd/ixfr.c
2597
if(!zone->apex) {
usr.sbin/nsd/ixfr.c
2600
if(zone->ixfr &&
usr.sbin/nsd/ixfr.c
2601
zone->ixfr->data->count == zone->opts->pattern->ixfr_number) {
usr.sbin/nsd/ixfr.c
2603
zone->opts->name, ixfrfile, (int)zone->opts->pattern->ixfr_number));
usr.sbin/nsd/ixfr.c
2610
state.zone = zone;
usr.sbin/nsd/ixfr.c
2621
if(!zone->apex) {
usr.sbin/nsd/ixfr.c
2628
domain_dname(zone->apex));
usr.sbin/nsd/ixfr.c
2631
state.tempzone->opts = zone->opts;
usr.sbin/nsd/ixfr.c
2644
origin = domain_dname(zone->apex);
usr.sbin/nsd/ixfr.c
2665
if(!zone->ixfr)
usr.sbin/nsd/ixfr.c
2666
zone->ixfr = zone_ixfr_create(nsd);
usr.sbin/nsd/ixfr.c
2667
if(zone->opts->pattern->ixfr_size != 0 &&
usr.sbin/nsd/ixfr.c
2668
zone->ixfr->total_size + ixfr_data_size(state.data) >
usr.sbin/nsd/ixfr.c
2669
zone->opts->pattern->ixfr_size) {
usr.sbin/nsd/ixfr.c
2671
zone->opts->name, ixfrfile, (unsigned)zone->opts->pattern->ixfr_size, (unsigned)ixfr_data_size(state.data)));
usr.sbin/nsd/ixfr.c
2677
zone_ixfr_add(zone->ixfr, state.data, 0, zone->opts->name);
usr.sbin/nsd/ixfr.c
2679
zone->opts->name, ixfrfile, (unsigned)ixfr_data_sz));
usr.sbin/nsd/ixfr.c
2685
static int ixfr_read_one_more_file(struct nsd* nsd, struct zone* zone,
usr.sbin/nsd/ixfr.c
2695
return ixfr_data_read(nsd, zone, ixfrfile, dest_serial, file_num);
usr.sbin/nsd/ixfr.c
2698
void ixfr_read_from_file(struct nsd* nsd, struct zone* zone, const char* zfile)
usr.sbin/nsd/ixfr.c
2705
zone_ixfr_clear(zone->ixfr);
usr.sbin/nsd/ixfr.c
2709
serial = zone_get_current_serial(zone);
usr.sbin/nsd/ixfr.c
2711
while(ixfr_read_one_more_file(nsd, zone, zfile, num_files, &serial)) {
usr.sbin/nsd/ixfr.c
2716
zone->opts->name, num_files));
usr.sbin/nsd/ixfr.c
497
uint32_t zone_get_current_serial(struct zone* zone)
usr.sbin/nsd/ixfr.c
499
if(!zone || !zone->soa_rrset)
usr.sbin/nsd/ixfr.c
501
if(zone->soa_rrset->rr_count == 0)
usr.sbin/nsd/ixfr.c
503
return soa_rr_get_serial(zone->soa_rrset->rrs[0]);
usr.sbin/nsd/ixfr.c
776
struct zone* zone;
usr.sbin/nsd/ixfr.c
797
zone = namedb_find_zone(nsd->db, query->qname);
usr.sbin/nsd/ixfr.c
798
if(!zone) {
usr.sbin/nsd/ixfr.c
803
ZTATUP(nsd, zone, rixfr);
usr.sbin/nsd/ixfr.c
807
current_serial = zone_get_current_serial(zone);
usr.sbin/nsd/ixfr.c
809
if(!zone->soa_rrset || zone->soa_rrset->rr_count != 1){
usr.sbin/nsd/ixfr.c
813
query_add_compression_domain(query, zone->apex,
usr.sbin/nsd/ixfr.c
815
if(packet_encode_rr(query, zone->apex,
usr.sbin/nsd/ixfr.c
816
zone->soa_rrset->rrs[0],
usr.sbin/nsd/ixfr.c
817
zone->soa_rrset->rrs[0]->ttl)) {
usr.sbin/nsd/ixfr.c
829
if(!zone->ixfr) {
usr.sbin/nsd/ixfr.c
837
ixfr_data = zone_ixfr_find_serial(zone->ixfr, qserial);
usr.sbin/nsd/ixfr.c
848
if(!connect_ixfrs(zone->ixfr, ixfr_data, &end_serial) ||
usr.sbin/nsd/ixfr.c
857
query->zone = zone;
usr.sbin/nsd/ixfr.c
861
query->ixfr_end_data = ixfr_data_last(zone->ixfr);
usr.sbin/nsd/ixfr.c
887
struct ixfr_data* next = ixfr_data_next(query->zone->ixfr,
usr.sbin/nsd/ixfr.c
960
struct ixfr_store* ixfr_store_start(struct zone* zone,
usr.sbin/nsd/ixfr.c
965
ixfr_store->zone = zone;
usr.sbin/nsd/ixfr.h
105
struct zone* zone;
usr.sbin/nsd/ixfr.h
135
struct ixfr_store* ixfr_store_start(struct zone* zone,
usr.sbin/nsd/ixfr.h
16
struct zone;
usr.sbin/nsd/ixfr.h
199
void ixfr_store_delixfrs(struct zone* zone);
usr.sbin/nsd/ixfr.h
202
int zone_is_ixfr_enabled(struct zone* zone);
usr.sbin/nsd/ixfr.h
211
void zone_ixfr_make_space(struct zone_ixfr* ixfr, struct zone* zone,
usr.sbin/nsd/ixfr.h
229
void ixfr_write_to_file(struct zone* zone, const char* zfile);
usr.sbin/nsd/ixfr.h
232
void ixfr_read_from_file(struct nsd* nsd, struct zone* zone, const char* zfile);
usr.sbin/nsd/ixfr.h
235
uint32_t zone_get_current_serial(struct zone* zone);
usr.sbin/nsd/ixfr.h
238
int ixfr_write_file(struct zone* zone, struct ixfr_data* data,
usr.sbin/nsd/ixfr.h
258
void ixfr_delete_superfluous_files(struct zone* zone, const char* zfile,
usr.sbin/nsd/ixfrcreate.c
1005
ixfr_read_from_file(nsd, zone, zfile);
usr.sbin/nsd/ixfrcreate.c
1008
int ixfr_create_perform(struct ixfr_create* ixfrcr, struct zone* zone,
usr.sbin/nsd/ixfrcreate.c
1014
if(!ixfr_perform_init(ixfrcr, zone, &store_mem, &store, &spool)) {
usr.sbin/nsd/ixfrcreate.c
1028
ixfr_delete_superfluous_files(zone, zfile, 0);
usr.sbin/nsd/ixfrcreate.c
1030
ixfr_store_delixfrs(zone);
usr.sbin/nsd/ixfrcreate.c
1033
if(ixfr_create_already_done(ixfrcr, zone, zfile, 1)) {
usr.sbin/nsd/ixfrcreate.c
1039
ixfr_readup_exist(zone, nsd, zfile);
usr.sbin/nsd/ixfrcreate.c
1044
if(!ixfr_create_walk_zone(spool, ixfrcr, store, zone)) {
usr.sbin/nsd/ixfrcreate.c
1048
ixfr_delete_superfluous_files(zone, zfile, 0);
usr.sbin/nsd/ixfrcreate.c
1063
ixfr_create_finishup(ixfrcr, store, zone, append_mem, nsd, zfile,
usr.sbin/nsd/ixfrcreate.c
107
static size_t domain_count_rrsets(domain_type* domain, zone_type* zone)
usr.sbin/nsd/ixfrcreate.c
1076
int ixfr_create_from_difference(struct zone* zone, const char* zfile,
usr.sbin/nsd/ixfrcreate.c
1082
if(!zone_is_ixfr_enabled(zone))
usr.sbin/nsd/ixfrcreate.c
1085
if(!zone->opts->pattern->create_ixfr)
usr.sbin/nsd/ixfrcreate.c
1088
if(!zone->soa_rrset || !zone->apex)
usr.sbin/nsd/ixfrcreate.c
1091
old_serial = zone_get_current_serial(zone);
usr.sbin/nsd/ixfrcreate.c
1092
if(ixfr_create_already_done_serial(zone, zfile, 0, old_serial, 0)) {
usr.sbin/nsd/ixfrcreate.c
112
if(s->zone == zone)
usr.sbin/nsd/ixfrcreate.c
119
static int spool_domains(FILE* out, struct zone* zone)
usr.sbin/nsd/ixfrcreate.c
122
for(domain = zone->apex; domain && domain_is_subdomain(domain,
usr.sbin/nsd/ixfrcreate.c
123
zone->apex); domain = domain_next(domain)) {
usr.sbin/nsd/ixfrcreate.c
124
uint32_t count = domain_count_rrsets(domain, zone);
usr.sbin/nsd/ixfrcreate.c
133
if(!spool_rrsets(out, domain->rrsets, zone))
usr.sbin/nsd/ixfrcreate.c
143
static int spool_zone_to_file(struct zone* zone, char* file_name,
usr.sbin/nsd/ixfrcreate.c
153
if(!spool_dname(out, domain_dname(zone->apex))) {
usr.sbin/nsd/ixfrcreate.c
165
if(!spool_domains(out, zone)) {
usr.sbin/nsd/ixfrcreate.c
189
struct ixfr_create* ixfr_create_start(struct zone* zone, const char* zfile,
usr.sbin/nsd/ixfrcreate.c
198
ixfrcr->zone_name_len = domain_dname(zone->apex)->name_size;
usr.sbin/nsd/ixfrcreate.c
205
memmove(ixfrcr->zone_name, dname_name(domain_dname(zone->apex)),
usr.sbin/nsd/ixfrcreate.c
213
ixfrcr->old_serial = zone_get_current_serial(zone);
usr.sbin/nsd/ixfrcreate.c
214
if(!spool_zone_to_file(zone, ixfrcr->file_name, ixfrcr->old_serial)) {
usr.sbin/nsd/ixfrcreate.c
218
if(zone->opts && zone->opts->pattern)
usr.sbin/nsd/ixfrcreate.c
219
ixfrcr->max_size = (size_t)zone->opts->pattern->ixfr_size;
usr.sbin/nsd/ixfrcreate.c
486
static int process_marktypes(struct ixfr_store* store, struct zone* zone,
usr.sbin/nsd/ixfrcreate.c
495
if(s->zone != zone)
usr.sbin/nsd/ixfrcreate.c
510
struct ixfr_store* store, struct zone* zone, struct domain* domain)
usr.sbin/nsd/ixfrcreate.c
541
rrset = domain_find_rrset(domain, zone, tp);
usr.sbin/nsd/ixfrcreate.c
561
if(!process_marktypes(store, zone, domain, marktypes, marktypes_used))
usr.sbin/nsd/ixfrcreate.c
567
static int process_domain_add_RRs(struct ixfr_store* store, struct zone* zone,
usr.sbin/nsd/ixfrcreate.c
572
if(s->zone != zone)
usr.sbin/nsd/ixfrcreate.c
731
struct ixfr_store* store, struct zone* zone, struct domain* domain,
usr.sbin/nsd/ixfrcreate.c
748
if(!process_domain_add_RRs(store, zone, domain))
usr.sbin/nsd/ixfrcreate.c
756
if(!process_diff_domain(spool, ixfrcr, store, zone, domain))
usr.sbin/nsd/ixfrcreate.c
792
struct ixfr_store* store, struct zone* zone)
usr.sbin/nsd/ixfrcreate.c
799
for(domain = zone->apex; domain && domain_is_subdomain(domain,
usr.sbin/nsd/ixfrcreate.c
800
zone->apex); domain = domain_next(domain)) {
usr.sbin/nsd/ixfrcreate.c
801
uint32_t count = domain_count_rrsets(domain, zone);
usr.sbin/nsd/ixfrcreate.c
806
if(!process_spool_for_domain(spool, ixfrcr, store, zone,
usr.sbin/nsd/ixfrcreate.c
825
static int ixfr_create_already_done_serial(struct zone* zone,
usr.sbin/nsd/ixfrcreate.c
831
if(!ixfr_read_file_header(zone->opts->name, zfile, 1, &file_oldserial,
usr.sbin/nsd/ixfrcreate.c
861
struct zone* zone, const char* zfile, int checknew)
usr.sbin/nsd/ixfrcreate.c
863
return ixfr_create_already_done_serial(zone, zfile, checknew,
usr.sbin/nsd/ixfrcreate.c
869
struct zone* zone)
usr.sbin/nsd/ixfrcreate.c
871
if(!zone || !zone->soa_rrset) {
usr.sbin/nsd/ixfrcreate.c
875
if(zone->soa_rrset->rr_count == 0) {
usr.sbin/nsd/ixfrcreate.c
879
if(!ixfr_store_add_newsoa_rdatas(store, zone->soa_rrset->rrs[0])) {
usr.sbin/nsd/ixfrcreate.c
887
static int ixfr_perform_init(struct ixfr_create* ixfrcr, struct zone* zone,
usr.sbin/nsd/ixfrcreate.c
900
ixfrcr->new_serial = zone_get_current_serial(zone);
usr.sbin/nsd/ixfrcreate.c
901
*store = ixfr_store_start(zone, store_mem);
usr.sbin/nsd/ixfrcreate.c
902
if(!ixfr_create_store_newsoa(*store, zone)) {
usr.sbin/nsd/ixfrcreate.c
93
static int spool_rrsets(FILE* out, rrset_type* rrsets, struct zone* zone)
usr.sbin/nsd/ixfrcreate.c
947
struct ixfr_store* store, struct zone* zone, int append_mem,
usr.sbin/nsd/ixfrcreate.c
956
ixfr_delete_superfluous_files(zone, zfile, 0);
usr.sbin/nsd/ixfrcreate.c
97
if(s->zone != zone)
usr.sbin/nsd/ixfrcreate.c
974
wiredname2str(ixfrcr->zone_name), zone->opts->name, zfile,
usr.sbin/nsd/ixfrcreate.c
980
if(!ixfr_write_file(zone, store->data, zfile, 1)) {
usr.sbin/nsd/ixfrcreate.c
992
void ixfr_readup_exist(struct zone* zone, struct nsd* nsd,
usr.sbin/nsd/ixfrcreate.h
13
struct zone;
usr.sbin/nsd/ixfrcreate.h
35
struct ixfr_create* ixfr_create_start(struct zone* zone, const char* zfile,
usr.sbin/nsd/ixfrcreate.h
45
int ixfr_create_perform(struct ixfr_create* ixfrcr, struct zone* zone,
usr.sbin/nsd/ixfrcreate.h
55
int ixfr_create_from_difference(struct zone* zone, const char* zfile,
usr.sbin/nsd/ixfrcreate.h
59
void ixfr_readup_exist(struct zone* zone, struct nsd* nsd, const char* zfile);
usr.sbin/nsd/namedb.c
531
domain_find_rrset(domain_type* domain, zone_type* zone, uint16_t type)
usr.sbin/nsd/namedb.c
536
if (result->zone == zone && rrset_rrtype(result) == type) {
usr.sbin/nsd/namedb.c
545
domain_find_any_rrset(domain_type* domain, zone_type* zone)
usr.sbin/nsd/namedb.c
550
if (result->zone == zone) {
usr.sbin/nsd/namedb.c
559
domain_find_rrset_and_prev(domain_type* domain, zone_type* zone, uint16_t type,
usr.sbin/nsd/namedb.c
565
if (result->zone == zone && rrset_rrtype(result) == type) {
usr.sbin/nsd/namedb.c
584
return rrset->zone;
usr.sbin/nsd/namedb.c
595
domain_find_parent_zone(namedb_type* db, zone_type* zone)
usr.sbin/nsd/namedb.c
599
assert(zone);
usr.sbin/nsd/namedb.c
601
for (rrset = zone->apex->rrsets; rrset; rrset = rrset->next) {
usr.sbin/nsd/namedb.c
602
if (rrset->zone != zone && rrset_rrtype(rrset) == TYPE_NS) {
usr.sbin/nsd/namedb.c
603
return rrset->zone;
usr.sbin/nsd/namedb.c
608
if(zone->apex->parent)
usr.sbin/nsd/namedb.c
609
return domain_find_zone(db, zone->apex->parent);
usr.sbin/nsd/namedb.c
614
domain_find_ns_rrsets(domain_type* domain, zone_type* zone, rrset_type **ns)
usr.sbin/nsd/namedb.c
619
while (domain && domain != zone->apex) {
usr.sbin/nsd/namedb.c
620
rrset = domain_find_rrset(domain, zone, TYPE_NS);
usr.sbin/nsd/namedb.c
636
find_dname_above(domain_type* domain, zone_type* zone)
usr.sbin/nsd/namedb.c
639
while(d && d != zone->apex) {
usr.sbin/nsd/namedb.c
640
if(domain_find_rrset(d, zone, TYPE_DNAME))
usr.sbin/nsd/namedb.c
648
domain_is_glue(domain_type* domain, zone_type* zone)
usr.sbin/nsd/namedb.c
651
domain_type* ns_domain = domain_find_ns_rrsets(domain, zone, &unused);
usr.sbin/nsd/namedb.c
653
domain_find_rrset(ns_domain, zone, TYPE_SOA) == NULL);
usr.sbin/nsd/namedb.c
675
zone_is_secure(zone_type* zone)
usr.sbin/nsd/namedb.c
677
assert(zone);
usr.sbin/nsd/namedb.c
678
return zone->is_secure;
usr.sbin/nsd/namedb.c
701
domain_find_non_cname_rrset(domain_type* domain, zone_type* zone)
usr.sbin/nsd/namedb.c
708
if (result->zone == zone && /* here is the list of exceptions*/
usr.sbin/nsd/namedb.c
732
void zone_rr_iter_init(struct zone_rr_iter *iter, struct zone *zone)
usr.sbin/nsd/namedb.c
735
assert(zone != NULL);
usr.sbin/nsd/namedb.c
737
iter->zone = zone;
usr.sbin/nsd/namedb.c
743
assert(iter->zone != NULL);
usr.sbin/nsd/namedb.c
753
iter->rrset = iter->zone->soa_rrset;
usr.sbin/nsd/namedb.c
762
assert(iter->rrset == iter->zone->soa_rrset);
usr.sbin/nsd/namedb.c
763
iter->domain = iter->zone->apex;
usr.sbin/nsd/namedb.c
770
(iter->rrset != NULL && (iter->rrset == iter->zone->soa_rrset ||
usr.sbin/nsd/namedb.c
771
iter->rrset->zone != iter->zone)))
usr.sbin/nsd/namedb.c
779
domain_dname(iter->zone->apex)))
usr.sbin/nsd/namedb.h
187
zone_type* zone;
usr.sbin/nsd/namedb.h
272
rrset_type* domain_find_rrset(domain_type* domain, zone_type* zone, uint16_t type);
usr.sbin/nsd/namedb.h
273
rrset_type* domain_find_any_rrset(domain_type* domain, zone_type* zone);
usr.sbin/nsd/namedb.h
274
rrset_type* domain_find_rrset_and_prev(domain_type* domain, zone_type* zone,
usr.sbin/nsd/namedb.h
278
zone_type* domain_find_parent_zone(namedb_type* db, zone_type* zone);
usr.sbin/nsd/namedb.h
280
domain_type* domain_find_ns_rrsets(domain_type* domain, zone_type* zone, rrset_type **ns);
usr.sbin/nsd/namedb.h
282
domain_type * find_dname_above(domain_type* domain, zone_type* zone);
usr.sbin/nsd/namedb.h
284
int domain_is_glue(domain_type* domain, zone_type* zone);
usr.sbin/nsd/namedb.h
286
rrset_type* domain_find_non_cname_rrset(domain_type* domain, zone_type* zone);
usr.sbin/nsd/namedb.h
291
int zone_is_secure(zone_type* zone);
usr.sbin/nsd/namedb.h
34
typedef struct zone zone_type;
usr.sbin/nsd/namedb.h
376
int print_rrs(FILE* out, struct zone* zone);
usr.sbin/nsd/namedb.h
393
void namedb_read_zonefile(struct nsd* nsd, struct zone* zone,
usr.sbin/nsd/namedb.h
400
{ zone_type* zone = namedb_find_zone(db, dname);
usr.sbin/nsd/namedb.h
401
return zone ? zone : namedb_zone_create(db, dname, zopt); }
usr.sbin/nsd/namedb.h
402
void namedb_zone_free_filenames(namedb_type* db, zone_type* zone);
usr.sbin/nsd/namedb.h
403
void namedb_zone_delete(namedb_type* db, zone_type* zone);
usr.sbin/nsd/namedb.h
433
zone_type *zone;
usr.sbin/nsd/namedb.h
439
void zone_rr_iter_init(zone_rr_iter_type *iter, zone_type *zone);
usr.sbin/nsd/nsd-checkconf.c
25
domain_table_type* ATTR_UNUSED(domains), zone_type* ATTR_UNUSED(zone),
usr.sbin/nsd/nsd-checkconf.c
321
zone_options_type* zone;
usr.sbin/nsd/nsd-checkconf.c
327
zone = zone_options_find(opt, dname);
usr.sbin/nsd/nsd-checkconf.c
328
if(!zone) {
usr.sbin/nsd/nsd-checkconf.c
332
ZONE_GET_STR(name, o, zone);
usr.sbin/nsd/nsd-checkconf.c
334
quote(zone->pattern->pname);
usr.sbin/nsd/nsd-checkconf.c
337
ZONE_GET_BIN(part_of_config, o, zone);
usr.sbin/nsd/nsd-checkconf.c
338
ZONE_GET_PATH(final, zonefile, o, zone->pattern);
usr.sbin/nsd/nsd-checkconf.c
339
ZONE_GET_ACL(allow_query, o, zone->pattern);
usr.sbin/nsd/nsd-checkconf.c
340
ZONE_GET_ACL(request_xfr, o, zone->pattern);
usr.sbin/nsd/nsd-checkconf.c
341
ZONE_GET_ACL(provide_xfr, o, zone->pattern);
usr.sbin/nsd/nsd-checkconf.c
342
ZONE_GET_ACL(allow_notify, o, zone->pattern);
usr.sbin/nsd/nsd-checkconf.c
343
ZONE_GET_ACL(notify, o, zone->pattern);
usr.sbin/nsd/nsd-checkconf.c
344
ZONE_GET_BIN(notify_retry, o, zone->pattern);
usr.sbin/nsd/nsd-checkconf.c
345
ZONE_GET_STR(zonestats, o, zone->pattern);
usr.sbin/nsd/nsd-checkconf.c
346
ZONE_GET_OUTGOING(outgoing_interface, o, zone->pattern);
usr.sbin/nsd/nsd-checkconf.c
347
ZONE_GET_BIN(allow_axfr_fallback, o, zone->pattern);
usr.sbin/nsd/nsd-checkconf.c
348
ZONE_GET_INT(max_refresh_time, o, zone->pattern);
usr.sbin/nsd/nsd-checkconf.c
349
ZONE_GET_INT(min_refresh_time, o, zone->pattern);
usr.sbin/nsd/nsd-checkconf.c
350
ZONE_GET_INT(max_retry_time, o, zone->pattern);
usr.sbin/nsd/nsd-checkconf.c
351
ZONE_GET_INT(min_retry_time, o, zone->pattern);
usr.sbin/nsd/nsd-checkconf.c
352
ZONE_GET_INT(min_expire_time, o, zone->pattern);
usr.sbin/nsd/nsd-checkconf.c
353
ZONE_GET_INT(size_limit_xfr, o, zone->pattern);
usr.sbin/nsd/nsd-checkconf.c
355
ZONE_GET_RRL(rrl_whitelist, o, zone->pattern);
usr.sbin/nsd/nsd-checkconf.c
357
ZONE_GET_BIN(multi_primary_check, o, zone->pattern);
usr.sbin/nsd/nsd-checkconf.c
358
ZONE_GET_BIN(store_ixfr, o, zone->pattern);
usr.sbin/nsd/nsd-checkconf.c
359
ZONE_GET_INT(ixfr_size, o, zone->pattern);
usr.sbin/nsd/nsd-checkconf.c
360
ZONE_GET_INT(ixfr_number, o, zone->pattern);
usr.sbin/nsd/nsd-checkconf.c
361
ZONE_GET_BIN(create_ixfr, o, zone->pattern);
usr.sbin/nsd/nsd-checkconf.c
503
zone_options_type* zone;
usr.sbin/nsd/nsd-checkconf.c
504
RBTREE_FOR(zone, zone_options_type*, opt->zone_options)
usr.sbin/nsd/nsd-checkconf.c
505
quote(zone->name);
usr.sbin/nsd/nsd-checkconf.c
619
zone_options_type* zone;
usr.sbin/nsd/nsd-checkconf.c
817
RBTREE_FOR(zone, zone_options_type*, opt->zone_options)
usr.sbin/nsd/nsd-checkconf.c
819
if(!zone->part_of_config)
usr.sbin/nsd/nsd-checkconf.c
822
print_string_var("name:", zone->name);
usr.sbin/nsd/nsd-checkconf.c
823
print_zone_content_elems(zone->pattern);
usr.sbin/nsd/nsd-checkconf.c
830
zone_options_type* zone;
usr.sbin/nsd/nsd-checkconf.c
833
RBTREE_FOR(zone, zone_options_type*, opt->zone_options)
usr.sbin/nsd/nsd-checkconf.c
835
const dname_type* dname = dname_parse(opt->region, zone->name); /* memory leak. */
usr.sbin/nsd/nsd-checkconf.c
837
fprintf(stderr, "%s: cannot parse zone name syntax for zone %s.\n", filename, zone->name);
usr.sbin/nsd/nsd-checkconf.c
841
if(zone->pattern->allow_notify && !zone->pattern->request_xfr) {
usr.sbin/nsd/nsd-checkconf.c
844
"is received?\n", filename, zone->name);
usr.sbin/nsd/nsd-checkconf.c
847
if(!zone_is_slave(zone) && !zone_is_catalog_producer(zone)
usr.sbin/nsd/nsd-checkconf.c
848
&& (!zone->pattern->zonefile || zone->pattern->zonefile[0] == 0)) {
usr.sbin/nsd/nsd-checkconf.c
851
filename, zone->name);
usr.sbin/nsd/nsd-checkzone.c
107
print_rrs(out, zone);
usr.sbin/nsd/nsd-checkzone.c
52
zone_type* zone;
usr.sbin/nsd/nsd-checkzone.c
67
zone = namedb_zone_create(nsd->db, dname, zo);
usr.sbin/nsd/nsd-checkzone.c
70
errors = zonec_read(nsd->db, nsd->db->domains, name, oldzone, zone);
usr.sbin/nsd/nsd-checkzone.c
75
ixfrcr = ixfr_create_start(zone, fname, ixfr_size, 1);
usr.sbin/nsd/nsd-checkzone.c
79
delete_zone_rrs(nsd->db, zone);
usr.sbin/nsd/nsd-checkzone.c
83
errors = zonec_read(nsd->db, nsd->db->domains, name, fname, zone);
usr.sbin/nsd/nsd-checkzone.c
94
if(!ixfr_create_perform(ixfrcr, zone, 0, nsd, fname,
usr.sbin/nsd/nsd-control.c
50
struct zone;
usr.sbin/nsd/nsd-control.c
54
struct zone* ATTR_UNUSED(zone), char* ATTR_UNUSED(str),
usr.sbin/nsd/nsd-mem.c
198
zone_type* zone;
usr.sbin/nsd/nsd-mem.c
211
zone = namedb_zone_create(db, dname, zo);
usr.sbin/nsd/nsd-mem.c
216
namedb_read_zonefile(&nsd, zone, taskudb, &last_task);
usr.sbin/nsd/nsd-mem.c
225
zone_ixfr_free(zone->ixfr);
usr.sbin/nsd/nsd.h
109
#define ZTATUP(nsd, zone, stc) ( \
usr.sbin/nsd/nsd.h
110
(zone && zone->zonestatid < nsd->zonestatsizenow) ? \
usr.sbin/nsd/nsd.h
111
nsd->zonestatnow[zone->zonestatid].stc++ \
usr.sbin/nsd/nsd.h
113
#define ZTATUP2(nsd, zone, stc, i) ( \
usr.sbin/nsd/nsd.h
114
(zone && zone->zonestatid < nsd->zonestatsizenow) ? \
usr.sbin/nsd/nsd.h
115
(nsd->zonestatnow[zone->zonestatid].stc[(i) <= (LASTELEM(nsd->zonestatnow[zone->zonestatid].stc) - 1) ? i : LASTELEM(nsd->zonestatnow[zone->zonestatid].stc)]++ ) \
usr.sbin/nsd/nsd.h
118
#define ZTATUP(nsd, zone, stc) /* Nothing */
usr.sbin/nsd/nsd.h
119
#define ZTATUP2(nsd, zone, stc, i) /* Nothing */
usr.sbin/nsd/nsd.h
304
struct zone *next_zone_to_verify;
usr.sbin/nsd/nsec3.c
1000
prehash_zone_complete(db, zone);
usr.sbin/nsd/nsec3.c
1005
process_prehash_domain(d, zone);
usr.sbin/nsd/nsec3.c
1010
if(!check_apex_soa(db, zone, 0)) {
usr.sbin/nsd/nsec3.c
1011
zone->nsec3_param = NULL;
usr.sbin/nsd/nsec3.c
1012
zone->nsec3_last = NULL;
usr.sbin/nsd/nsec3.c
1022
rrset_type* rrset = domain_find_rrset(domain, query->zone, TYPE_NSEC3);
usr.sbin/nsd/nsec3.c
1042
nsec3_hash_and_store(query->zone, to_prove, hash);
usr.sbin/nsd/nsec3.c
1043
if(nsec3_find_cover(query->zone, hash, sizeof(hash), &cover))
usr.sbin/nsd/nsec3.c
1051
walk = query->zone->apex;
usr.sbin/nsd/nsec3.c
106
nsec3_b32_create(region_type* region, zone_type* zone, unsigned char* hash)
usr.sbin/nsd/nsec3.c
1109
if(!query->zone->nsec3_param)
usr.sbin/nsd/nsec3.c
1119
assert(domain != query->zone->apex);
usr.sbin/nsd/nsec3.c
112
dname=dname_concatenate(region, dname, domain_dname(zone->apex));
usr.sbin/nsd/nsec3.c
1126
query->zone)) {
usr.sbin/nsd/nsec3.c
117
nsec3_hash_and_store(zone_type* zone, const dname_type* dname, uint8_t* store)
usr.sbin/nsd/nsec3.c
1173
if(!query->zone->nsec3_param)
usr.sbin/nsd/nsec3.c
1178
if(original == query->zone->apex) {
usr.sbin/nsd/nsec3.c
123
detect_nsec3_params(zone->nsec3_param, &nsec3_salt,
usr.sbin/nsd/nsec3.c
1239
if(!query->zone->nsec3_param)
usr.sbin/nsd/nsec3.c
1245
domain_has_only_NSEC3(struct domain* domain, struct zone* zone)
usr.sbin/nsd/nsec3.c
1252
if(!zone || rrset->zone == zone)
usr.sbin/nsd/nsec3.c
1269
if(!query->zone->nsec3_param)
usr.sbin/nsd/nsec3.c
1278
domain_has_only_NSEC3(*match, query->zone))
usr.sbin/nsd/nsec3.c
1283
if(query->zone->apex->nsec3 &&
usr.sbin/nsd/nsec3.c
1284
query->zone->apex->nsec3->nsec3_is_exact)
usr.sbin/nsd/nsec3.c
1286
query->zone->apex->nsec3->nsec3_cover);
usr.sbin/nsd/nsec3.c
1291
if(query->zone->apex->nsec3)
usr.sbin/nsd/nsec3.c
1293
query->zone->apex->nsec3->nsec3_wcard_child_cover);
usr.sbin/nsd/nsec3.c
1294
if (domain_wildcard_child(query->zone->apex)) {
usr.sbin/nsd/nsec3.c
1309
(domain_has_only_NSEC3(*match, query->zone) ||
usr.sbin/nsd/nsec3.c
1310
!domain_find_any_rrset(*match, query->zone)))
usr.sbin/nsd/nsec3.c
135
nsec3_lookup_hash_and_wc(region_type* region, zone_type* zone,
usr.sbin/nsd/nsec3.c
147
nsec3_hash_and_store(zone, dname, domain->nsec3->hash_wc->hash.hash);
usr.sbin/nsd/nsec3.c
151
nsec3_hash_and_store(zone, wcard, domain->nsec3->hash_wc->wc.hash);
usr.sbin/nsd/nsec3.c
156
nsec3_lookup_hash_ds(region_type* region, zone_type* zone,
usr.sbin/nsd/nsec3.c
166
nsec3_hash_and_store(zone, dname, domain->nsec3->ds_parent_hash->hash);
usr.sbin/nsd/nsec3.c
195
check_apex_soa(namedb_type* namedb, zone_type *zone, int nolog)
usr.sbin/nsd/nsec3.c
199
const dname_type* hashed_apex, *dname = domain_dname(zone->apex);
usr.sbin/nsd/nsec3.c
204
nsec3_hash_and_store(zone, dname, h);
usr.sbin/nsd/nsec3.c
206
hashed_apex = nsec3_b32_create(tmpregion, zone, h);
usr.sbin/nsd/nsec3.c
209
if((int)domain_dname(zone->apex)->name_size >= 223) {
usr.sbin/nsd/nsec3.c
213
domain_dname(zone->apex), NULL));
usr.sbin/nsd/nsec3.c
218
domain_dname(zone->apex), NULL));
usr.sbin/nsd/nsec3.c
228
domain_to_string(zone->apex));
usr.sbin/nsd/nsec3.c
235
nsec3_rrset = domain_find_rrset(domain, zone, TYPE_NSEC3);
usr.sbin/nsd/nsec3.c
239
domain_to_string(zone->apex));
usr.sbin/nsd/nsec3.c
254
domain_to_string(zone->apex));
usr.sbin/nsd/nsec3.c
288
db_find_nsec3param(struct namedb* db, struct zone* z, struct rr* avoid_rr,
usr.sbin/nsd/nsec3.c
326
nsec3_find_zone_param(struct namedb* db, struct zone* zone,
usr.sbin/nsd/nsec3.c
330
zone->nsec3_param = db_find_nsec3param(db, zone, avoid_rr, checkchain);
usr.sbin/nsd/nsec3.c
346
nsec3_rr_uses_params(rr_type* rr, zone_type* zone)
usr.sbin/nsd/nsec3.c
352
return nsec3_rdata_params_ok(zone->nsec3_param, rr);
usr.sbin/nsd/nsec3.c
356
nsec3_in_chain_count(domain_type* domain, zone_type* zone)
usr.sbin/nsd/nsec3.c
358
rrset_type* rrset = domain_find_rrset(domain, zone, TYPE_NSEC3);
usr.sbin/nsd/nsec3.c
361
if(!rrset || !zone->nsec3_param)
usr.sbin/nsd/nsec3.c
364
if(nsec3_rr_uses_params(rrset->rrs[i], zone))
usr.sbin/nsd/nsec3.c
371
nsec3_chain_find_prev(struct zone* zone, struct domain* domain)
usr.sbin/nsd/nsec3.c
382
if(zone->nsec3_last && zone->nsec3_last != domain)
usr.sbin/nsd/nsec3.c
383
return zone->nsec3_last;
usr.sbin/nsd/nsec3.c
414
nsec3_clear_precompile_walk(struct namedb* db, zone_type* zone,
usr.sbin/nsd/nsec3.c
418
if(nsec3_condition_hash(walk, zone)) {
usr.sbin/nsd/nsec3.c
430
if(nsec3_condition_dshash(walk, zone)) {
usr.sbin/nsd/nsec3.c
444
static struct zone*
usr.sbin/nsd/nsec3.c
457
struct zone* zone; /* the super zone of apex */
usr.sbin/nsd/nsec3.c
458
zone = find_superzone_of(db, apex);
usr.sbin/nsd/nsec3.c
459
if(!zone) return; /* no super zone above the apex */
usr.sbin/nsd/nsec3.c
460
if(!zone->nsec3_param) return; /* super is not an NSEC3 zone */
usr.sbin/nsd/nsec3.c
463
if(!domain_is_subdomain(apex_domain, zone->apex))
usr.sbin/nsd/nsec3.c
468
if(nsec3_condition_hash(walk, zone)) {
usr.sbin/nsd/nsec3.c
469
zone_del_domain_in_hash_tree(zone->nsec3tree,
usr.sbin/nsd/nsec3.c
473
zone->hashtree,
usr.sbin/nsd/nsec3.c
476
zone->wchashtree,
usr.sbin/nsd/nsec3.c
480
if(nsec3_condition_dshash(walk, zone)) {
usr.sbin/nsd/nsec3.c
482
zone_del_domain_in_hash_tree(zone->dshashtree,
usr.sbin/nsd/nsec3.c
487
nsec3_clear_precompile_walk(db, zone, walk);
usr.sbin/nsd/nsec3.c
491
zone->nsec3_last = ((zone->nsec3tree && rbtree_last(zone->nsec3tree) != RBTREE_NULL)?
usr.sbin/nsd/nsec3.c
492
(domain_type*)rbtree_last(zone->nsec3tree)->key:NULL);
usr.sbin/nsd/nsec3.c
496
nsec3_clear_precompile(struct namedb* db, zone_type* zone)
usr.sbin/nsd/nsec3.c
502
hash_tree_clear(zone->nsec3tree);
usr.sbin/nsd/nsec3.c
503
hash_tree_clear(zone->hashtree);
usr.sbin/nsd/nsec3.c
504
hash_tree_clear(zone->wchashtree);
usr.sbin/nsd/nsec3.c
505
hash_tree_clear(zone->dshashtree);
usr.sbin/nsd/nsec3.c
509
walk = zone->apex;
usr.sbin/nsd/nsec3.c
510
while(walk && domain_is_subdomain(walk, zone->apex)) {
usr.sbin/nsd/nsec3.c
511
nsec3_clear_precompile_walk(db, zone, walk);
usr.sbin/nsd/nsec3.c
514
zone->nsec3_last = NULL;
usr.sbin/nsd/nsec3.c
563
return rrset->zone;
usr.sbin/nsd/nsec3.c
579
zone_type *zone = NULL;
usr.sbin/nsd/nsec3.c
584
zone = rrset->zone;
usr.sbin/nsd/nsec3.c
585
if (!zone)
usr.sbin/nsd/nsec3.c
586
zone = namedb_find_zone(db, domain_dname(d));
usr.sbin/nsd/nsec3.c
587
if (zone && zone->dshashtree)
usr.sbin/nsd/nsec3.c
588
return zone;
usr.sbin/nsd/nsec3.c
596
nsec3_find_cover(zone_type* zone, uint8_t* hash, size_t hashlen,
usr.sbin/nsd/nsec3.c
618
assert(zone->nsec3_param && zone->nsec3tree);
usr.sbin/nsd/nsec3.c
620
exact = rbtree_find_less_equal(zone->nsec3tree, &d, &r);
usr.sbin/nsd/nsec3.c
624
*result = zone->nsec3_last;
usr.sbin/nsd/nsec3.c
631
struct zone* zone, region_type* tmpregion)
usr.sbin/nsd/nsec3.c
639
zone, domain_dname(domain), domain, tmpregion);
usr.sbin/nsd/nsec3.c
642
zone_add_domain_in_hash_tree(db->region, &zone->hashtree,
usr.sbin/nsd/nsec3.c
646
exact = nsec3_find_cover(zone, domain->nsec3->hash_wc->hash.hash,
usr.sbin/nsd/nsec3.c
658
zone_add_domain_in_hash_tree(db->region, &zone->wchashtree,
usr.sbin/nsd/nsec3.c
660
(void)nsec3_find_cover(zone, domain->nsec3->hash_wc->wc.hash,
usr.sbin/nsd/nsec3.c
674
struct zone* zone)
usr.sbin/nsd/nsec3.c
682
nsec3_lookup_hash_ds(db->region, zone, domain_dname(domain), domain);
usr.sbin/nsd/nsec3.c
684
exact = nsec3_find_cover(zone, domain->nsec3->ds_parent_hash->hash,
usr.sbin/nsd/nsec3.c
689
zone_add_domain_in_hash_tree(db->region, &zone->dshashtree,
usr.sbin/nsd/nsec3.c
711
struct zone* zone)
usr.sbin/nsd/nsec3.c
715
zone_add_domain_in_hash_tree(db->region, &zone->nsec3tree,
usr.sbin/nsd/nsec3.c
718
if(rbtree_last(zone->nsec3tree)->key == domain) {
usr.sbin/nsd/nsec3.c
719
zone->nsec3_last = domain;
usr.sbin/nsd/nsec3.c
725
nsec3_precompile_walk(struct namedb* db, zone_type* zone, domain_type* walk,
usr.sbin/nsd/nsec3.c
728
if(nsec3_condition_hash(walk, zone)) {
usr.sbin/nsd/nsec3.c
729
nsec3_precompile_domain(db, walk, zone, tmpregion);
usr.sbin/nsd/nsec3.c
732
if(nsec3_condition_dshash(walk, zone))
usr.sbin/nsd/nsec3.c
733
nsec3_precompile_domain_ds(db, walk, zone);
usr.sbin/nsd/nsec3.c
741
struct zone* zone; /* the super zone of apex */
usr.sbin/nsd/nsec3.c
742
zone = find_superzone_of(db, apex);
usr.sbin/nsd/nsec3.c
743
if(!zone) return; /* no super zone above the apex */
usr.sbin/nsd/nsec3.c
744
if(!zone->nsec3_param) return; /* super is not an NSEC3 zone */
usr.sbin/nsd/nsec3.c
747
if(!domain_is_subdomain(apex_domain, zone->apex))
usr.sbin/nsd/nsec3.c
752
if(nsec3_in_chain_count(walk, zone) != 0) {
usr.sbin/nsd/nsec3.c
753
nsec3_precompile_nsec3rr(db, walk, zone);
usr.sbin/nsd/nsec3.c
758
nsec3_precompile_walk(db, zone, walk, tmpregion);
usr.sbin/nsd/nsec3.c
764
nsec3_precompile_newparam(namedb_type* db, zone_type* zone)
usr.sbin/nsd/nsec3.c
772
for(walk=zone->apex; walk && domain_is_subdomain(walk, zone->apex);
usr.sbin/nsd/nsec3.c
775
if(nsec3_in_chain_count(walk, zone) != 0) {
usr.sbin/nsd/nsec3.c
776
nsec3_precompile_nsec3rr(db, walk, zone);
usr.sbin/nsd/nsec3.c
78
void nsec3_zone_trees_create(struct region* region, zone_type* zone)
usr.sbin/nsd/nsec3.c
780
for(walk=zone->apex; walk && domain_is_subdomain(walk, zone->apex);
usr.sbin/nsd/nsec3.c
782
nsec3_precompile_walk(db, zone, walk, tmpregion);
usr.sbin/nsd/nsec3.c
786
zone->opts->name,
usr.sbin/nsd/nsec3.c
794
prehash_zone_complete(struct namedb* db, struct zone* zone)
usr.sbin/nsd/nsec3.c
797
nsec3_clear_precompile(db, zone);
usr.sbin/nsd/nsec3.c
80
if(!zone->nsec3tree)
usr.sbin/nsd/nsec3.c
800
assert(db && zone);
usr.sbin/nsd/nsec3.c
801
nsec3_find_zone_param(db, zone, NULL, 1);
usr.sbin/nsd/nsec3.c
802
if(!zone->nsec3_param || !check_apex_soa(db, zone, 0)) {
usr.sbin/nsd/nsec3.c
803
zone->nsec3_param = NULL;
usr.sbin/nsd/nsec3.c
804
zone->nsec3_last = NULL;
usr.sbin/nsd/nsec3.c
807
nsec3_zone_trees_create(db->region, zone);
usr.sbin/nsd/nsec3.c
808
nsec3_precompile_newparam(db, zone);
usr.sbin/nsd/nsec3.c
81
zone->nsec3tree = rbtree_create(region, cmp_nsec3_tree);
usr.sbin/nsd/nsec3.c
82
if(!zone->hashtree)
usr.sbin/nsd/nsec3.c
83
zone->hashtree = rbtree_create(region, cmp_hash_tree);
usr.sbin/nsd/nsec3.c
84
if(!zone->wchashtree)
usr.sbin/nsd/nsec3.c
85
zone->wchashtree = rbtree_create(region, cmp_wchash_tree);
usr.sbin/nsd/nsec3.c
86
if(!zone->dshashtree)
usr.sbin/nsd/nsec3.c
87
zone->dshashtree = rbtree_create(region, cmp_dshash_tree);
usr.sbin/nsd/nsec3.c
896
process_range(zone_type* zone, domain_type* start,
usr.sbin/nsd/nsec3.c
910
if(process_first(zone->hashtree, hash, &p, init_lookup_key_hash_tree)) {
usr.sbin/nsd/nsec3.c
915
(void)process_first(zone->wchashtree, hash, &pwc, init_lookup_key_wc_tree);
usr.sbin/nsd/nsec3.c
916
if(process_first(zone->dshashtree, hash, &pds, init_lookup_key_ds_tree)){
usr.sbin/nsd/nsec3.c
924
if(zone->hashtree)
usr.sbin/nsd/nsec3.c
925
p = rbtree_first(zone->hashtree);
usr.sbin/nsd/nsec3.c
926
if(zone->wchashtree)
usr.sbin/nsd/nsec3.c
927
pwc = rbtree_first(zone->wchashtree);
usr.sbin/nsd/nsec3.c
928
if(zone->dshashtree)
usr.sbin/nsd/nsec3.c
929
pds = rbtree_first(zone->dshashtree);
usr.sbin/nsd/nsec3.c
935
process_end(zone->hashtree, hash, &p_end, init_lookup_key_hash_tree);
usr.sbin/nsd/nsec3.c
936
process_end(zone->wchashtree, hash, &pwc_end, init_lookup_key_wc_tree);
usr.sbin/nsd/nsec3.c
937
process_end(zone->dshashtree, hash, &pds_end, init_lookup_key_ds_tree);
usr.sbin/nsd/nsec3.c
962
process_prehash_domain(domain_type* domain, zone_type* zone)
usr.sbin/nsd/nsec3.c
977
process_range(zone, domain, end, domain);
usr.sbin/nsd/nsec3.c
981
zone->nsec3tree)->key);
usr.sbin/nsd/nsec3.c
983
process_range(zone, domain, NULL, domain);
usr.sbin/nsd/nsec3.c
985
process_range(zone, NULL, first, domain);
usr.sbin/nsd/nsec3.c
989
void prehash_zone(struct namedb* db, struct zone* zone)
usr.sbin/nsd/nsec3.c
992
if(!zone->nsec3_param) {
usr.sbin/nsd/nsec3.c
996
if(!check_apex_soa(db, zone, 1)) {
usr.sbin/nsd/nsec3.h
101
struct zone* zone);
usr.sbin/nsd/nsec3.h
104
struct zone* zone);
usr.sbin/nsd/nsec3.h
106
void nsec3_precompile_newparam(struct namedb* db, struct zone* zone);
usr.sbin/nsd/nsec3.h
114
const struct dname* nsec3_b32_create(struct region* region, struct zone* zone,
usr.sbin/nsd/nsec3.h
117
void nsec3_zone_trees_create(struct region* region, struct zone* zone);
usr.sbin/nsd/nsec3.h
119
struct zone* nsec3_tree_zone(struct namedb* db, struct domain* domain);
usr.sbin/nsd/nsec3.h
121
struct zone* nsec3_tree_dszone(struct namedb* db, struct domain* domain);
usr.sbin/nsd/nsec3.h
17
struct zone;
usr.sbin/nsd/nsec3.h
26
void prehash_zone(struct namedb* db, struct zone* zone);
usr.sbin/nsd/nsec3.h
30
void prehash_zone_complete(struct namedb* db, struct zone* zone);
usr.sbin/nsd/nsec3.h
36
int nsec3_find_cover(struct zone* zone, uint8_t* hash, size_t hashlen,
usr.sbin/nsd/nsec3.h
74
int domain_has_only_NSEC3(struct domain* domain, struct zone* zone);
usr.sbin/nsd/nsec3.h
77
void nsec3_hash_and_store(struct zone* zone, const struct dname* dname,
usr.sbin/nsd/nsec3.h
80
int nsec3_rr_uses_params(struct rr* rr, struct zone* zone);
usr.sbin/nsd/nsec3.h
82
int nsec3_in_chain_count(struct domain* domain, struct zone* zone);
usr.sbin/nsd/nsec3.h
84
struct domain* nsec3_chain_find_prev(struct zone* zone, struct domain* domain);
usr.sbin/nsd/nsec3.h
86
void nsec3_clear_precompile(struct namedb* db, struct zone* zone);
usr.sbin/nsd/nsec3.h
88
int nsec3_domain_part_of_zone(struct domain* d, struct zone* z);
usr.sbin/nsd/nsec3.h
90
int nsec3_condition_hash(struct domain* d, struct zone* z);
usr.sbin/nsd/nsec3.h
92
int nsec3_condition_dshash(struct domain* d, struct zone* z);
usr.sbin/nsd/nsec3.h
94
void nsec3_find_zone_param(struct namedb* db, struct zone* zone,
usr.sbin/nsd/nsec3.h
98
struct zone* zone, struct region* tmpregion);
usr.sbin/nsd/options.c
1036
struct zone_options* zone;
usr.sbin/nsd/options.c
1037
zone = (struct zone_options*)region_alloc(region, sizeof(
usr.sbin/nsd/options.c
1039
zone->node = *RBTREE_NULL;
usr.sbin/nsd/options.c
1040
zone->name = 0;
usr.sbin/nsd/options.c
1041
zone->pattern = 0;
usr.sbin/nsd/options.c
1042
zone->part_of_config = 0;
usr.sbin/nsd/options.c
1043
zone->is_catalog_member_zone = 0;
usr.sbin/nsd/options.c
1044
return zone;
usr.sbin/nsd/options.c
194
nsd_options_insert_zone(struct nsd_options* opt, struct zone_options* zone)
usr.sbin/nsd/options.c
197
const dname_type* dname = dname_parse(opt->region, zone->name);
usr.sbin/nsd/options.c
200
zone->node.key = dname;
usr.sbin/nsd/options.c
201
if(!rbtree_insert(opt->zone_options, (rbnode_type*)zone))
usr.sbin/nsd/options.c
253
cfg_parser->zone = NULL;
usr.sbin/nsd/options.c
2531
get_end_label(struct zone_options* zone, int i)
usr.sbin/nsd/options.c
2533
const dname_type* d = (const dname_type*)zone->node.key;
usr.sbin/nsd/options.c
2576
config_cook_string(struct zone_options* zone, const char* input)
usr.sbin/nsd/options.c
2585
replace_str(f, sizeof(f), "%1", get_char(zone->name, 0));
usr.sbin/nsd/options.c
2587
replace_str(f, sizeof(f), "%2", get_char(zone->name, 1));
usr.sbin/nsd/options.c
2589
replace_str(f, sizeof(f), "%3", get_char(zone->name, 2));
usr.sbin/nsd/options.c
2591
replace_str(f, sizeof(f), "%z", get_end_label(zone, 1));
usr.sbin/nsd/options.c
2593
replace_str(f, sizeof(f), "%y", get_end_label(zone, 2));
usr.sbin/nsd/options.c
2595
replace_str(f, sizeof(f), "%x", get_end_label(zone, 3));
usr.sbin/nsd/options.c
2598
zone->name));
usr.sbin/nsd/options.c
2603
config_make_zonefile(struct zone_options* zone, struct nsd* nsd)
usr.sbin/nsd/options.c
2607
if(!strchr(zone->pattern->zonefile, '%')) {
usr.sbin/nsd/options.c
2609
zone->pattern->zonefile &&
usr.sbin/nsd/options.c
2610
zone->pattern->zonefile[0] == '/' &&
usr.sbin/nsd/options.c
2611
strncmp(zone->pattern->zonefile, nsd->chrootdir,
usr.sbin/nsd/options.c
2614
return zone->pattern->zonefile + strlen(nsd->chrootdir) - 1;
usr.sbin/nsd/options.c
2615
return zone->pattern->zonefile;
usr.sbin/nsd/options.c
2617
strlcpy(f, zone->pattern->zonefile, sizeof(f));
usr.sbin/nsd/options.c
2619
replace_str(f, sizeof(f), "%1", get_char(zone->name, 0));
usr.sbin/nsd/options.c
2621
replace_str(f, sizeof(f), "%2", get_char(zone->name, 1));
usr.sbin/nsd/options.c
2623
replace_str(f, sizeof(f), "%3", get_char(zone->name, 2));
usr.sbin/nsd/options.c
2625
replace_str(f, sizeof(f), "%z", get_end_label(zone, 1));
usr.sbin/nsd/options.c
2627
replace_str(f, sizeof(f), "%y", get_end_label(zone, 2));
usr.sbin/nsd/options.c
2629
replace_str(f, sizeof(f), "%x", get_end_label(zone, 3));
usr.sbin/nsd/options.c
2632
zone->name));
usr.sbin/nsd/options.c
473
struct zone_options* zone;
usr.sbin/nsd/options.c
483
zone = pat->catalog_producer_zone
usr.sbin/nsd/options.c
486
zone->part_of_config = 0;
usr.sbin/nsd/options.c
487
zone->name = region_strdup(opt->region, nm);
usr.sbin/nsd/options.c
488
zone->linesize = linesize;
usr.sbin/nsd/options.c
489
zone->off = off;
usr.sbin/nsd/options.c
490
zone->pattern = pat;
usr.sbin/nsd/options.c
491
if(!nsd_options_insert_zone(opt, zone)) {
usr.sbin/nsd/options.c
494
region_recycle(opt->region, (void*)zone->name, strlen(nm)+1);
usr.sbin/nsd/options.c
495
region_recycle(opt->region, zone, sizeof(*zone));
usr.sbin/nsd/options.c
505
zone->linesize += label_length(dname_name(cmz->member_id)) + 1;
usr.sbin/nsd/options.c
507
(int)zone->linesize));
usr.sbin/nsd/options.c
523
return zone;
usr.sbin/nsd/options.c
650
zone_options_delete(struct nsd_options* opt, struct zone_options* zone)
usr.sbin/nsd/options.c
652
struct catalog_member_zone* member_zone = as_catalog_member_zone(zone);
usr.sbin/nsd/options.c
654
rbtree_delete(opt->zone_options, zone->node.key);
usr.sbin/nsd/options.c
655
region_recycle(opt->region, (void*)zone->node.key, dname_total_size(
usr.sbin/nsd/options.c
656
(dname_type*)zone->node.key));
usr.sbin/nsd/options.c
658
region_recycle(opt->region, zone, sizeof(*zone));
usr.sbin/nsd/options.c
691
struct zone_options* zone = zone_list_member_zone_insert(
usr.sbin/nsd/options.c
694
if(!zone)
usr.sbin/nsd/options.c
697
if(zone_is_catalog_producer_member(zone)
usr.sbin/nsd/options.c
698
&& (cmz = as_catalog_member_zone(zone))
usr.sbin/nsd/options.c
717
zone_options_delete(opt, zone);
usr.sbin/nsd/options.c
728
zone_options_delete(opt, zone);
usr.sbin/nsd/options.c
731
zone->off = ftello(opt->zonelist);
usr.sbin/nsd/options.c
732
if(zone->off == -1)
usr.sbin/nsd/options.c
735
if(r != zone->linesize) {
usr.sbin/nsd/options.c
742
zone_options_delete(opt, zone);
usr.sbin/nsd/options.c
751
return zone;
usr.sbin/nsd/options.c
754
&zone->linesize);
usr.sbin/nsd/options.c
757
zone->off = opt->zonelist_off;
usr.sbin/nsd/options.c
758
if(fseeko(opt->zonelist, zone->off, SEEK_SET) == -1) {
usr.sbin/nsd/options.c
761
zone_options_delete(opt, zone);
usr.sbin/nsd/options.c
765
if(r != zone->linesize) {
usr.sbin/nsd/options.c
772
zone_options_delete(opt, zone);
usr.sbin/nsd/options.c
775
opt->zonelist_off += zone->linesize;
usr.sbin/nsd/options.c
779
return zone;
usr.sbin/nsd/options.c
783
zone->off = e->off;
usr.sbin/nsd/options.c
784
if(fseeko(opt->zonelist, zone->off, SEEK_SET) == -1) {
usr.sbin/nsd/options.c
787
zone_options_delete(opt, zone);
usr.sbin/nsd/options.c
791
if(r != zone->linesize) {
usr.sbin/nsd/options.c
798
zone_options_delete(opt, zone);
usr.sbin/nsd/options.c
813
return zone;
usr.sbin/nsd/options.c
818
zone_list_del(struct nsd_options* opt, struct zone_options* zone)
usr.sbin/nsd/options.c
820
if (zone_is_catalog_consumer_member(zone)) {
usr.sbin/nsd/options.c
822
zone_options_delete(opt, zone);
usr.sbin/nsd/options.c
826
if(fseeko(opt->zonelist, zone->off, SEEK_SET) == -1) {
usr.sbin/nsd/options.c
831
zone_list_free_insert(opt, zone->linesize, zone->off);
usr.sbin/nsd/options.c
834
zone_options_delete(opt, zone);
usr.sbin/nsd/options.c
869
struct zone_options* zone;
usr.sbin/nsd/options.c
898
RBTREE_FOR(zone, struct zone_options*, opt->zone_options) {
usr.sbin/nsd/options.c
901
if(zone->part_of_config)
usr.sbin/nsd/options.c
903
if(zone_is_catalog_producer_member(zone)
usr.sbin/nsd/options.c
904
&& (cmz = as_catalog_member_zone(zone))
usr.sbin/nsd/options.c
906
r = fprintf(out, "cat %s %s %.*s\n", zone->name,
usr.sbin/nsd/options.c
907
zone->pattern->pname,
usr.sbin/nsd/options.c
911
r = fprintf(out, "add %s %s\n", zone->name,
usr.sbin/nsd/options.c
912
zone->pattern->pname);
usr.sbin/nsd/options.c
919
} else if(r != zone->linesize) {
usr.sbin/nsd/options.c
939
RBTREE_FOR(zone, struct zone_options*, opt->zone_options) {
usr.sbin/nsd/options.c
940
if(zone->part_of_config)
usr.sbin/nsd/options.c
942
zone->off = off;
usr.sbin/nsd/options.c
943
off += zone->linesize;
usr.sbin/nsd/options.h
396
typedef void (*new_member_id_type)(struct catalog_member_zone* zone);
usr.sbin/nsd/options.h
502
struct zone_options *zone;
usr.sbin/nsd/options.h
518
int nsd_options_insert_zone(struct nsd_options* opt, struct zone_options* zone);
usr.sbin/nsd/options.h
529
void zone_options_delete(struct nsd_options* opt, struct zone_options* zone);
usr.sbin/nsd/options.h
569
void zone_list_del(struct nsd_options* opt, struct zone_options* zone);
usr.sbin/nsd/options.h
579
const char* config_cook_string(struct zone_options* zone, const char* input);
usr.sbin/nsd/options.h
637
const char* config_make_zonefile(struct zone_options* zone, struct nsd* nsd);
usr.sbin/nsd/packet.c
154
zone_is_secure(rrset->zone) &&
usr.sbin/nsd/packet.c
156
(rrsig = domain_find_rrset(owner, rrset->zone, TYPE_RRSIG)))
usr.sbin/nsd/query.c
1013
query->zone->apex,
usr.sbin/nsd/query.c
1014
query->zone->soa_nx_rrset);
usr.sbin/nsd/query.c
1034
if (query->edns.dnssec_ok && query->zone->nsec3_param) {
usr.sbin/nsd/query.c
1038
if (query->edns.dnssec_ok && zone_is_secure(query->zone)) {
usr.sbin/nsd/query.c
1042
nsec_domain = find_covering_nsec(original, query->zone, &nsec_rrset);
usr.sbin/nsd/query.c
1078
for (rrset = domain_find_any_rrset(domain, q->zone); rrset; rrset = rrset->next) {
usr.sbin/nsd/query.c
1079
if (rrset->zone == q->zone
usr.sbin/nsd/query.c
1089
&& zone_is_secure(q->zone)
usr.sbin/nsd/query.c
1126
} else if ((rrset = domain_find_rrset(domain, q->zone, q->qtype))) {
usr.sbin/nsd/query.c
1128
} else if ((rrset = domain_find_rrset(domain, q->zone, TYPE_CNAME))) {
usr.sbin/nsd/query.c
1142
zone_type* origzone = q->zone;
usr.sbin/nsd/query.c
1149
q->zone = origzone;
usr.sbin/nsd/query.c
1157
if (q->qclass != CLASS_ANY && q->zone->ns_rrset && answer_needs_ns(q)
usr.sbin/nsd/query.c
1159
add_rrset(q, answer, OPTIONAL_AUTHORITY_SECTION, q->zone->apex,
usr.sbin/nsd/query.c
1160
q->zone->ns_rrset);
usr.sbin/nsd/query.c
1191
if(exact && domain_has_only_NSEC3(closest_match, q->zone)) {
usr.sbin/nsd/query.c
1197
if((dname_ce = find_dname_above(closest_encloser, q->zone)) != NULL) {
usr.sbin/nsd/query.c
1205
} else if ((rrset=domain_find_rrset(closest_encloser, q->zone, TYPE_DNAME))) {
usr.sbin/nsd/query.c
1212
zone_type* origzone = q->zone;
usr.sbin/nsd/query.c
1259
q->zone = origzone;
usr.sbin/nsd/query.c
1292
if (q->edns.dnssec_ok && q->zone->nsec3_param) {
usr.sbin/nsd/query.c
1311
if (q->edns.dnssec_ok && q->zone->nsec3_param) {
usr.sbin/nsd/query.c
1316
if (q->edns.dnssec_ok && zone_is_secure(q->zone)) {
usr.sbin/nsd/query.c
1325
nsec_domain = find_covering_nsec(closest_match, q->zone, &nsec_rrset);
usr.sbin/nsd/query.c
1340
wildcard_child_closest_match, q->zone,
usr.sbin/nsd/query.c
1367
zone_type* origzone = q->zone;
usr.sbin/nsd/query.c
1368
q->zone = domain_find_zone(nsd->db, closest_encloser);
usr.sbin/nsd/query.c
1369
if (!q->zone) {
usr.sbin/nsd/query.c
1380
if(q->zone->opts && q->zone->opts->pattern
usr.sbin/nsd/query.c
1381
&& q->zone->opts->pattern->allow_query) {
usr.sbin/nsd/query.c
1386
q->zone->opts->pattern->allow_query, q, &why) == -1) {
usr.sbin/nsd/query.c
1412
q->zone->opts->pattern->allow_query, q, &why) != -1) {
usr.sbin/nsd/query.c
1421
(const dname_type*)q->zone->opts->node.key)
usr.sbin/nsd/query.c
1423
q->zone->opts->pattern->provide_xfr, q,&why)) {
usr.sbin/nsd/query.c
1455
if(!q->zone->apex || !q->zone->soa_rrset) {
usr.sbin/nsd/query.c
1473
(origzone != NULL && dname_compare(domain_dname(origzone->apex), domain_dname(q->zone->apex)) != 0)) {
usr.sbin/nsd/query.c
1490
if (exact && q->qtype == TYPE_DS && closest_encloser == q->zone->apex) {
usr.sbin/nsd/query.c
1496
zone_type *zone = domain_find_parent_zone(nsd->db, q->zone);
usr.sbin/nsd/query.c
1497
if (zone) {
usr.sbin/nsd/query.c
1498
q->zone = zone;
usr.sbin/nsd/query.c
1499
if(!q->zone->apex || !q->zone->soa_rrset) {
usr.sbin/nsd/query.c
1515
if(q->zone && q->zone->opts && q->zone->opts->pattern &&
usr.sbin/nsd/query.c
1516
q->zone->opts->pattern->request_xfr != 0 && !q->zone->is_ok) {
usr.sbin/nsd/query.c
1527
if (exact && q->qtype == TYPE_DS && closest_encloser == q->zone->apex) {
usr.sbin/nsd/query.c
1540
closest_encloser, q->zone, &q->delegation_rrset);
usr.sbin/nsd/query.c
1541
if(q->delegation_domain && find_dname_above(q->delegation_domain, q->zone)) {
usr.sbin/nsd/query.c
1578
ZTATUP2(nsd, q->zone, opcode, q->opcode);
usr.sbin/nsd/query.c
1579
ZTATUP2(nsd, q->zone, qtype, q->qtype);
usr.sbin/nsd/query.c
1580
ZTATUP2(nsd, q->zone, qclass, q->qclass);
usr.sbin/nsd/query.c
1833
&& q->zone
usr.sbin/nsd/query.c
1834
&& q->zone->soa_rrset
usr.sbin/nsd/query.c
1835
&& q->zone->soa_rrset->rr_count >= 1
usr.sbin/nsd/query.c
1836
&& q->zone->soa_rrset->rrs[0]->rdlength >= 20 /* 5x 32bit numbers */ +2*sizeof(void*) /* two pointers to domain names */)
usr.sbin/nsd/query.c
1858
&& q->zone
usr.sbin/nsd/query.c
1859
&& q->zone->soa_rrset
usr.sbin/nsd/query.c
1860
&& q->zone->soa_rrset->rr_count >= 1
usr.sbin/nsd/query.c
1861
&& q->zone->soa_rrset->rrs[0]->rdlength >= 20+2*sizeof(void*) /* 5x4 bytes and 2 pointers to domains */ ) {
usr.sbin/nsd/query.c
1869
domain_dname(q->zone->apex)->label_count - 1);
usr.sbin/nsd/query.c
1872
retrieve_soa_rdata_serial(q->zone->soa_rrset->rrs[0], &serial);
usr.sbin/nsd/query.c
1901
ZTATUP(nsd, q->zone, edns);
usr.sbin/nsd/query.c
1910
ZTATUP(nsd, q->zone, ednserr);
usr.sbin/nsd/query.c
265
q->zone = NULL;
usr.sbin/nsd/query.c
658
zone_type *zone,
usr.sbin/nsd/query.c
672
*nsec_rrset = domain_find_rrset(closest_match, zone, TYPE_NSEC);
usr.sbin/nsd/query.c
676
if (closest_match == zone->apex) {
usr.sbin/nsd/query.c
731
if (!allow_glue && domain_is_glue(match, query->zone))
usr.sbin/nsd/query.c
762
additional, query->zone, types[j].rr_type);
usr.sbin/nsd/query.c
939
rrset->zone = q->zone;
usr.sbin/nsd/query.c
987
if (query->edns.dnssec_ok && zone_is_secure(query->zone)) {
usr.sbin/nsd/query.c
989
if ((rrset = domain_find_rrset(query->delegation_domain, query->zone, TYPE_DS))) {
usr.sbin/nsd/query.c
993
} else if (query->zone->nsec3_param) {
usr.sbin/nsd/query.c
996
} else if ((rrset = domain_find_rrset(query->delegation_domain, query->zone, TYPE_NSEC))) {
usr.sbin/nsd/query.h
99
zone_type *zone;
usr.sbin/nsd/remote.c
1001
zone = (xfrd_zone_type*)rbtree_search(xfrd->zones, (const
usr.sbin/nsd/remote.c
1003
if(zone) {
usr.sbin/nsd/remote.c
1004
force_transfer_zone(zone);
usr.sbin/nsd/remote.c
1010
RBTREE_FOR(zone, xfrd_zone_type*, xfrd->zones) {
usr.sbin/nsd/remote.c
1011
force_transfer_zone(zone);
usr.sbin/nsd/remote.c
1047
zone_type* zone = namedb_find_zone(xfrd->nsd->db,
usr.sbin/nsd/remote.c
1056
if(zone && zone->soa_rrset
usr.sbin/nsd/remote.c
1058
&& zone->soa_rrset->rrs
usr.sbin/nsd/remote.c
1060
&& retrieve_soa_rdata_serial(zone->soa_rrset->rrs[0],
usr.sbin/nsd/remote.c
2408
struct zone_options* zone;
usr.sbin/nsd/remote.c
2421
if(!get_zone_arg(ssl, xfrd, arg, &zone))
usr.sbin/nsd/remote.c
2423
if(!zone) {
usr.sbin/nsd/remote.c
2435
xzone = xfrd_find_zone(xfrd, (dname_type*)zone->node.key);
usr.sbin/nsd/remote.c
2450
zopt_set_acl_to_tsig(zone->pattern->allow_notify, region, arg2,
usr.sbin/nsd/remote.c
2452
zopt_set_acl_to_tsig(zone->pattern->notify, region, arg2, key_opt);
usr.sbin/nsd/remote.c
2453
zopt_set_acl_to_tsig(zone->pattern->request_xfr, region, arg2,
usr.sbin/nsd/remote.c
2455
zopt_set_acl_to_tsig(zone->pattern->provide_xfr, region, arg2,
usr.sbin/nsd/remote.c
2457
zopt_set_acl_to_tsig(zone->pattern->allow_query, region, arg2,
usr.sbin/nsd/remote.c
2461
xfrd->last_task, zone->pattern);
usr.sbin/nsd/remote.c
2483
struct zone_options* zone;
usr.sbin/nsd/remote.c
2495
RBTREE_FOR(zone, struct zone_options*, xfrd->nsd->options->zone_options)
usr.sbin/nsd/remote.c
2498
if(acl_contains_tsig_key(zone->pattern->allow_notify, arg) ||
usr.sbin/nsd/remote.c
2499
acl_contains_tsig_key(zone->pattern->notify, arg) ||
usr.sbin/nsd/remote.c
2500
acl_contains_tsig_key(zone->pattern->request_xfr, arg) ||
usr.sbin/nsd/remote.c
2501
acl_contains_tsig_key(zone->pattern->provide_xfr, arg) ||
usr.sbin/nsd/remote.c
2502
acl_contains_tsig_key(zone->pattern->allow_query, arg)) {
usr.sbin/nsd/remote.c
2504
zone->name, arg))
usr.sbin/nsd/remote.c
2509
xzone = xfrd_find_zone(xfrd, (dname_type*)zone->node.key);
usr.sbin/nsd/remote.c
2513
zone->name, arg))
usr.sbin/nsd/remote.c
956
xfrd_zone_type* zone;
usr.sbin/nsd/remote.c
960
zone = (xfrd_zone_type*)rbtree_search(xfrd->zones, (const
usr.sbin/nsd/remote.c
962
if(zone) {
usr.sbin/nsd/remote.c
963
xfrd_handle_notify_and_start_xfr(zone, NULL);
usr.sbin/nsd/remote.c
969
RBTREE_FOR(zone, xfrd_zone_type*, xfrd->zones) {
usr.sbin/nsd/remote.c
970
xfrd_handle_notify_and_start_xfr(zone, NULL);
usr.sbin/nsd/remote.c
978
force_transfer_zone(xfrd_zone_type* zone)
usr.sbin/nsd/remote.c
981
if(zone->tcp_conn != -1)
usr.sbin/nsd/remote.c
982
xfrd_tcp_release(xfrd->tcp_set, zone);
usr.sbin/nsd/remote.c
983
else if(zone->zone_handler.ev_fd != -1)
usr.sbin/nsd/remote.c
984
xfrd_udp_release(zone);
usr.sbin/nsd/remote.c
987
zone->soa_disk_acquired = 0;
usr.sbin/nsd/remote.c
988
zone->soa_nsd_acquired = 0;
usr.sbin/nsd/remote.c
989
xfrd_handle_notify_and_start_xfr(zone, NULL);
usr.sbin/nsd/remote.c
997
xfrd_zone_type* zone;
usr.sbin/nsd/rrl.c
246
if(query->zone && query->zone->apex) {
usr.sbin/nsd/rrl.c
247
*d = dname_name(domain_dname(query->zone->apex));
usr.sbin/nsd/rrl.c
248
*d_len = domain_dname(query->zone->apex)->name_size;
usr.sbin/nsd/rrl.c
253
if(query->zone && query->zone->apex) {
usr.sbin/nsd/rrl.c
254
*d = dname_name(domain_dname(query->zone->apex));
usr.sbin/nsd/rrl.c
255
*d_len = domain_dname(query->zone->apex)->name_size;
usr.sbin/nsd/rrl.c
284
if(query->zone && query->zone->apex) {
usr.sbin/nsd/rrl.c
285
*d = dname_name(domain_dname(query->zone->apex));
usr.sbin/nsd/rrl.c
286
*d_len = domain_dname(query->zone->apex)->name_size;
usr.sbin/nsd/rrl.c
318
if(query->zone && query->zone->opts &&
usr.sbin/nsd/rrl.c
319
(query->zone->opts->pattern->rrl_whitelist & c))
usr.sbin/nsd/rrl.c
365
if(query->zone && query->zone->opts &&
usr.sbin/nsd/rrl.c
366
(query->zone->opts->pattern->rrl_whitelist & c))
usr.sbin/nsd/server.c
2541
zone_type* zone;
usr.sbin/nsd/server.c
2603
zone = (zone_type *)node->elem;
usr.sbin/nsd/server.c
2604
if(zone->is_updated) {
usr.sbin/nsd/server.c
2605
if(zone->is_bad) {
usr.sbin/nsd/server.c
2615
zone, hint);
usr.sbin/nsd/server.c
2616
} else if(zone->is_skipped) {
usr.sbin/nsd/server.c
2620
zone, soainfo_gone);
usr.sbin/nsd/server.c
2622
zone->is_updated = 0;
usr.sbin/nsd/server.c
2623
zone->is_skipped = 0;
usr.sbin/nsd/server.c
3446
struct zone *zone;
usr.sbin/nsd/server.c
3450
zone = verify_next_zone(nsd, NULL);
usr.sbin/nsd/server.c
3451
if(zone == NULL)
usr.sbin/nsd/server.c
3457
nsd->next_zone_to_verify = zone;
usr.sbin/nsd/server.c
3472
nsd->verifiers[i].zone = NULL;
usr.sbin/nsd/server.c
4236
ZTATUP(data->nsd, q->zone, nona);
usr.sbin/nsd/server.c
4241
ZTATUP(data->nsd, q->zone, qudp);
usr.sbin/nsd/server.c
4243
ZTATUP(data->nsd, q->zone, qudp6);
usr.sbin/nsd/server.c
4255
ZTATUP2(data->nsd, q->zone, rcode, RCODE(q->packet));
usr.sbin/nsd/server.c
4258
ZTATUP(data->nsd, q->zone, truncated);
usr.sbin/nsd/server.c
4271
q->zone);
usr.sbin/nsd/server.c
4279
ZTATUP(data->nsd, q->zone, dropped);
usr.sbin/nsd/server.c
4680
ZTATUP(data->nsd, data->query->zone, dropped);
usr.sbin/nsd/server.c
4690
ZTATUP(data->nsd, data->query->zone, nona);
usr.sbin/nsd/server.c
4696
ZTATUP(data->nsd, data->query->zone, ctcp);
usr.sbin/nsd/server.c
4699
ZTATUP(data->nsd, data->query->zone, ctcp);
usr.sbin/nsd/server.c
4701
ZTATUP(data->nsd, data->query->zone, ctcp6);
usr.sbin/nsd/server.c
4714
ZTATUP2(data->nsd, data->query->zone, rcode, RCODE(data->query->packet));
usr.sbin/nsd/server.c
4717
ZTATUP(data->nsd, data->query->zone, truncated);
usr.sbin/nsd/server.c
4730
data->query->zone);
usr.sbin/nsd/server.c
5291
ZTATUP(data->nsd, data->query->zone, dropped);
usr.sbin/nsd/server.c
5301
ZTATUP(data->nsd, data->query->zone, nona);
usr.sbin/nsd/server.c
5307
ZTATUP(data->nsd, data->query->zone, ctls);
usr.sbin/nsd/server.c
5310
ZTATUP(data->nsd, data->query->zone, ctls);
usr.sbin/nsd/server.c
5312
ZTATUP(data->nsd, data->query->zone, ctls6);
usr.sbin/nsd/server.c
5325
ZTATUP2(data->nsd, data->query->zone, rcode, RCODE(data->query->packet));
usr.sbin/nsd/server.c
5328
ZTATUP(data->nsd, data->query->zone, truncated);
usr.sbin/nsd/server.c
5341
data->query->zone);
usr.sbin/nsd/server.c
561
zone_type* zone = (zone_type*)n->elem;
usr.sbin/nsd/server.c
562
zone->zonestatid = getzonestatid(nsd->options, zone->opts);
usr.sbin/nsd/verify.c
170
assert(verifier->zone != NULL);
usr.sbin/nsd/verify.c
175
verifier->zone->opts->name,
usr.sbin/nsd/verify.c
212
verifier->zone->is_ok = verifier->was_ok;
usr.sbin/nsd/verify.c
214
verifier->zone = NULL;
usr.sbin/nsd/verify.c
258
verifier->zone->is_bad = 1;
usr.sbin/nsd/verify.c
261
verifier->zone->opts->name, verifier->pid);
usr.sbin/nsd/verify.c
314
if(nsd->verifiers[i].zone != NULL &&
usr.sbin/nsd/verify.c
328
verifier->zone->opts->name, pid);
usr.sbin/nsd/verify.c
334
verifier->zone->is_bad = 1;
usr.sbin/nsd/verify.c
338
verifier->zone->opts->name, pid, status);
usr.sbin/nsd/verify.c
34
struct zone *verify_next_zone(struct nsd *nsd, struct zone *zone)
usr.sbin/nsd/verify.c
39
if(zone != NULL) {
usr.sbin/nsd/verify.c
40
node = radix_next(zone->node);
usr.sbin/nsd/verify.c
403
if(nsd->verifiers[i].zone != NULL) {
usr.sbin/nsd/verify.c
415
void verify_zone(struct nsd *nsd, struct zone *zone)
usr.sbin/nsd/verify.c
425
assert(zone != NULL);
usr.sbin/nsd/verify.c
432
if(nsd->verifiers[i].zone == NULL) {
usr.sbin/nsd/verify.c
439
if(zone->opts->pattern->verifier != NULL) {
usr.sbin/nsd/verify.c
440
command = zone->opts->pattern->verifier;
usr.sbin/nsd/verify.c
445
zone->opts->name);
usr.sbin/nsd/verify.c
449
if(zone->opts->pattern->verifier_timeout
usr.sbin/nsd/verify.c
452
timeout = zone->opts->pattern->verifier_timeout;
usr.sbin/nsd/verify.c
457
if(zone->opts->pattern->verifier_feed_zone
usr.sbin/nsd/verify.c
46
zone = (struct zone *)node->elem;
usr.sbin/nsd/verify.c
460
fdin = zone->opts->pattern->verifier_feed_zone ? -2 : -1;
usr.sbin/nsd/verify.c
467
setenv("VERIFY_ZONE", zone->opts->name, 1);
usr.sbin/nsd/verify.c
47
verify = zone->opts->pattern->verify_zone;
usr.sbin/nsd/verify.c
474
"%s: %s", zone->opts->name, strerror(errno));
usr.sbin/nsd/verify.c
481
zone->opts->name, strerror(errno));
usr.sbin/nsd/verify.c
488
zone->opts->name, strerror(errno));
usr.sbin/nsd/verify.c
495
zone->opts->name, strerror(errno));
usr.sbin/nsd/verify.c
502
verifier->zone = zone;
usr.sbin/nsd/verify.c
503
verifier->was_ok = zone->is_ok;
usr.sbin/nsd/verify.c
51
if(verify && zone->is_updated && !zone->is_checked) {
usr.sbin/nsd/verify.c
52
return zone;
usr.sbin/nsd/verify.c
520
"zone %s", zone->opts->name);
usr.sbin/nsd/verify.c
536
"zone %s", zone->opts->name);
usr.sbin/nsd/verify.c
543
zone_rr_iter_init(&verifier->zone_feed.rriter, zone);
usr.sbin/nsd/verify.c
560
"for zone %s", zone->opts->name);
usr.sbin/nsd/verify.c
576
"for zone %s", zone->opts->name);
usr.sbin/nsd/verify.c
582
zone->opts->name, verifier->pid, timeout);
usr.sbin/nsd/verify.c
585
"(pid %d)", zone->opts->name, verifier->pid);
usr.sbin/nsd/verify.c
588
zone->is_ok = 1;
usr.sbin/nsd/verify.c
616
zone->is_bad = 1;
usr.sbin/nsd/verify.c
618
verifier->zone = NULL;
usr.sbin/nsd/verify.h
60
struct zone *zone;
usr.sbin/nsd/verify.h
70
struct zone *verify_next_zone(struct nsd *nsd, struct zone *zone);
usr.sbin/nsd/verify.h
72
void verify_zone(struct nsd *nsd, struct zone *zone);
usr.sbin/nsd/xdp-server.c
703
ZTATUP(nsd, q->zone, nona);
usr.sbin/nsd/xdp-server.c
708
ZTATUP(nsd, q->zone, qudp);
usr.sbin/nsd/xdp-server.c
710
ZTATUP(nsd, q->zone, qudp6);
usr.sbin/nsd/xdp-server.c
721
ZTATUP2(nsd, q->zone, rcode, RCODE(q->packet));
usr.sbin/nsd/xdp-server.c
724
ZTATUP(nsd, q->zone, truncated);
usr.sbin/nsd/xdp-server.c
733
ZTATUP(nsd, q->zone, dropped);
usr.sbin/nsd/xfrd-catalog-zones.c
182
struct zone_options* zone)
usr.sbin/nsd/xfrd-catalog-zones.c
187
xfrd->catalog_consumer_zones, zone->node.key))) {
usr.sbin/nsd/xfrd-catalog-zones.c
190
" consumer zones index", zone->name);
usr.sbin/nsd/xfrd-catalog-zones.c
199
consumer_zone->node.key = zone->node.key;
usr.sbin/nsd/xfrd-catalog-zones.c
200
consumer_zone->options = zone;
usr.sbin/nsd/xfrd-catalog-zones.c
217
if(zone->pattern && zone->pattern->store_ixfr) {
usr.sbin/nsd/xfrd-catalog-zones.c
219
zone->pattern->store_ixfr = 0;
usr.sbin/nsd/xfrd-catalog-zones.c
228
zone_type* zone;
usr.sbin/nsd/xfrd-catalog-zones.c
252
if ((zone = namedb_find_zone(xfrd->nsd->db, dname))) {
usr.sbin/nsd/xfrd-catalog-zones.c
253
namedb_zone_delete(xfrd->nsd->db, zone);
usr.sbin/nsd/xfrd-catalog-zones.c
259
xfrd_zone_type* zone = (xfrd_zone_type*)rbtree_search(
usr.sbin/nsd/xfrd-catalog-zones.c
263
if(zone) {
usr.sbin/nsd/xfrd-catalog-zones.c
264
zone->soa_disk_acquired = 0;
usr.sbin/nsd/xfrd-catalog-zones.c
265
zone->soa_nsd_acquired = 0;
usr.sbin/nsd/xfrd-catalog-zones.c
266
xfrd_handle_notify_and_start_xfr(zone, NULL);
usr.sbin/nsd/xfrd-catalog-zones.c
416
const char *invalid_catalog_consumer_zone(struct zone_options* zone)
usr.sbin/nsd/xfrd-catalog-zones.c
421
if (!zone || !zone_is_catalog_consumer(zone))
usr.sbin/nsd/xfrd-catalog-zones.c
437
rbtree_search(xfrd->catalog_consumer_zones, zone->node.key)))
usr.sbin/nsd/xfrd-catalog-zones.c
444
zone->name, msg);
usr.sbin/nsd/xfrd-catalog-zones.c
491
zone_type* zone;
usr.sbin/nsd/xfrd-catalog-zones.c
526
zone = namedb_find_zone(xfrd->nsd->db, dname);
usr.sbin/nsd/xfrd-catalog-zones.c
527
if (!zone) {
usr.sbin/nsd/xfrd-catalog-zones.c
528
zone = namedb_zone_create(xfrd->nsd->db, dname,
usr.sbin/nsd/xfrd-catalog-zones.c
530
namedb_read_zonefile(xfrd->nsd, zone, NULL, NULL);
usr.sbin/nsd/xfrd-catalog-zones.c
532
if (timespec_compare(&consumer_zone->mtime, &zone->mtime) == 0) {
usr.sbin/nsd/xfrd-catalog-zones.c
536
consumer_zone->mtime = zone->mtime;
usr.sbin/nsd/xfrd-catalog-zones.c
541
|| !(rrset = domain_find_rrset(match, zone, TYPE_TXT))) {
usr.sbin/nsd/xfrd-catalog-zones.c
588
|| !(rrset = domain_find_rrset(member_id, zone, TYPE_PTR)))
usr.sbin/nsd/xfrd-catalog-zones.c
621
|| !(rrset = domain_find_rrset(group, zone, TYPE_TXT))) {
usr.sbin/nsd/xfrd-catalog-zones.h
85
struct zone_options* zone);
usr.sbin/nsd/xfrd-catalog-zones.h
97
const char *invalid_catalog_consumer_zone(struct zone_options* zone);
usr.sbin/nsd/xfrd-disk.c
191
xfrd_zone_type* zone;
usr.sbin/nsd/xfrd-disk.c
240
zone = (xfrd_zone_type*)rbtree_search(xfrd->zones, dname);
usr.sbin/nsd/xfrd-disk.c
241
if(!zone) {
usr.sbin/nsd/xfrd-disk.c
252
statefile, zone->apex_str);
usr.sbin/nsd/xfrd-disk.c
255
zone->state = state;
usr.sbin/nsd/xfrd-disk.c
256
zone->master_num = masnum;
usr.sbin/nsd/xfrd-disk.c
257
zone->next_master = nextmas;
usr.sbin/nsd/xfrd-disk.c
258
zone->round_num = round_num;
usr.sbin/nsd/xfrd-disk.c
259
zone->timeout.tv_sec = timeout;
usr.sbin/nsd/xfrd-disk.c
260
zone->timeout.tv_usec = 0;
usr.sbin/nsd/xfrd-disk.c
261
zone->fresh_xfr_timeout = backoff*XFRD_TRANSFER_TIMEOUT_START;
usr.sbin/nsd/xfrd-disk.c
264
zone->master = acl_find_num(zone->zone_options->pattern->
usr.sbin/nsd/xfrd-disk.c
265
request_xfr, zone->master_num);
usr.sbin/nsd/xfrd-disk.c
266
if(!zone->master) {
usr.sbin/nsd/xfrd-disk.c
268
zone->apex_str));
usr.sbin/nsd/xfrd-disk.c
269
zone->master = zone->zone_options->pattern->request_xfr;
usr.sbin/nsd/xfrd-disk.c
270
zone->master_num = 0;
usr.sbin/nsd/xfrd-disk.c
271
zone->round_num = 0;
usr.sbin/nsd/xfrd-disk.c
280
if (soa_refresh > (time_t)zone->zone_options->pattern->max_refresh_time)
usr.sbin/nsd/xfrd-disk.c
281
soa_refresh = zone->zone_options->pattern->max_refresh_time;
usr.sbin/nsd/xfrd-disk.c
282
else if (soa_refresh < (time_t)zone->zone_options->pattern->min_refresh_time)
usr.sbin/nsd/xfrd-disk.c
283
soa_refresh = zone->zone_options->pattern->min_refresh_time;
usr.sbin/nsd/xfrd-disk.c
289
zone->state = xfrd_zone_refreshing;
usr.sbin/nsd/xfrd-disk.c
290
xfrd_set_refresh_now(zone);
usr.sbin/nsd/xfrd-disk.c
295
if(zone->state == xfrd_zone_ok)
usr.sbin/nsd/xfrd-disk.c
296
zone->state = xfrd_zone_refreshing;
usr.sbin/nsd/xfrd-disk.c
297
xfrd_set_refresh_now(zone);
usr.sbin/nsd/xfrd-disk.c
305
zone->state = xfrd_zone_expired;
usr.sbin/nsd/xfrd-disk.c
306
xfrd_set_refresh_now(zone);
usr.sbin/nsd/xfrd-disk.c
310
if(zone->soa_nsd_acquired && zone->state != xfrd_zone_expired
usr.sbin/nsd/xfrd-disk.c
311
&& zone->soa_nsd.serial == soa_nsd_read.serial) {
usr.sbin/nsd/xfrd-disk.c
312
xfrd_deactivate_zone(zone);
usr.sbin/nsd/xfrd-disk.c
313
zone->state = state;
usr.sbin/nsd/xfrd-disk.c
314
xfrd_set_timer(zone,
usr.sbin/nsd/xfrd-disk.c
315
within_refresh_bounds(zone, timeout));
usr.sbin/nsd/xfrd-disk.c
317
if((zone->soa_nsd_acquired == 0 && soa_nsd_acquired_read == 0 &&
usr.sbin/nsd/xfrd-disk.c
319
(zone->state != xfrd_zone_ok && timeout != 0)) {
usr.sbin/nsd/xfrd-disk.c
322
xfrd_deactivate_zone(zone);
usr.sbin/nsd/xfrd-disk.c
323
zone->state = state;
usr.sbin/nsd/xfrd-disk.c
324
xfrd_set_timer(zone,
usr.sbin/nsd/xfrd-disk.c
325
within_retry_bounds(zone, timeout));
usr.sbin/nsd/xfrd-disk.c
329
incoming_soa = zone->soa_nsd;
usr.sbin/nsd/xfrd-disk.c
330
incoming_acquired = zone->soa_nsd_acquired;
usr.sbin/nsd/xfrd-disk.c
331
zone->soa_nsd = soa_nsd_read;
usr.sbin/nsd/xfrd-disk.c
332
zone->soa_nsd_acquired = soa_nsd_acquired_read;
usr.sbin/nsd/xfrd-disk.c
336
zone->soa_disk = incoming_soa;
usr.sbin/nsd/xfrd-disk.c
337
zone->soa_disk_acquired = incoming_acquired;
usr.sbin/nsd/xfrd-disk.c
338
zone->soa_notified = soa_notified_read;
usr.sbin/nsd/xfrd-disk.c
339
zone->soa_notified_acquired = soa_notified_acquired_read;
usr.sbin/nsd/xfrd-disk.c
340
if (zone->state == xfrd_zone_expired)
usr.sbin/nsd/xfrd-disk.c
342
xfrd_send_expire_notification(zone);
usr.sbin/nsd/xfrd-disk.c
345
xfrd_handle_incoming_soa(zone, &incoming_soa, incoming_acquired);
usr.sbin/nsd/xfrd-disk.c
493
xfrd_zone_type* zone = (xfrd_zone_type*)p;
usr.sbin/nsd/xfrd-disk.c
494
fprintf(out, "zone: \tname: %s\n", zone->apex_str);
usr.sbin/nsd/xfrd-disk.c
495
fprintf(out, "\tstate: %d", (int)zone->state);
usr.sbin/nsd/xfrd-disk.c
496
fprintf(out, " # %s", zone->state==xfrd_zone_ok?"OK":(
usr.sbin/nsd/xfrd-disk.c
497
zone->state==xfrd_zone_refreshing?"refreshing":"expired"));
usr.sbin/nsd/xfrd-disk.c
499
fprintf(out, "\tmaster: %d\n", zone->master_num);
usr.sbin/nsd/xfrd-disk.c
500
fprintf(out, "\tnext_master: %d\n", zone->next_master);
usr.sbin/nsd/xfrd-disk.c
501
fprintf(out, "\tround_num: %d\n", zone->round_num);
usr.sbin/nsd/xfrd-disk.c
503
(zone->zone_handler_flags&EV_TIMEOUT)?(int)zone->timeout.tv_sec:0);
usr.sbin/nsd/xfrd-disk.c
504
if((zone->zone_handler_flags&EV_TIMEOUT)) {
usr.sbin/nsd/xfrd-disk.c
505
neato_timeout(out, "\t# =", zone->timeout.tv_sec);
usr.sbin/nsd/xfrd-disk.c
508
fprintf(out, "\tbackoff: %d\n", zone->fresh_xfr_timeout/XFRD_TRANSFER_TIMEOUT_START);
usr.sbin/nsd/xfrd-disk.c
509
xfrd_write_state_soa(out, "soa_nsd", &zone->soa_nsd,
usr.sbin/nsd/xfrd-disk.c
510
zone->soa_nsd_acquired, zone->apex);
usr.sbin/nsd/xfrd-disk.c
511
xfrd_write_state_soa(out, "soa_disk", &zone->soa_disk,
usr.sbin/nsd/xfrd-disk.c
512
zone->soa_disk_acquired, zone->apex);
usr.sbin/nsd/xfrd-disk.c
513
xfrd_write_state_soa(out, "soa_notify", &zone->soa_notified,
usr.sbin/nsd/xfrd-disk.c
514
zone->soa_notified_acquired, zone->apex);
usr.sbin/nsd/xfrd-notify.c
155
reply_pkt_is_ack(struct notify_zone* zone, buffer_type* packet, int index)
usr.sbin/nsd/xfrd-notify.c
160
zone->apex_str, zone->pkts[index].dest->ip_address_spec);
usr.sbin/nsd/xfrd-notify.c
165
if(ID(packet) != zone->pkts[index].notify_query_id) {
usr.sbin/nsd/xfrd-notify.c
167
zone->apex_str, zone->pkts[index].dest->ip_address_spec);
usr.sbin/nsd/xfrd-notify.c
173
zone->apex_str, rcode2str(RCODE(packet)),
usr.sbin/nsd/xfrd-notify.c
174
zone->pkts[index].dest->ip_address_spec);
usr.sbin/nsd/xfrd-notify.c
180
zone->apex_str, zone->pkts[index].dest->ip_address_spec));
usr.sbin/nsd/xfrd-notify.c
225
notify_pkt_done(struct notify_zone* zone, int index)
usr.sbin/nsd/xfrd-notify.c
227
zone->pkts[index].dest = NULL;
usr.sbin/nsd/xfrd-notify.c
228
zone->pkts[index].notify_retry = 0;
usr.sbin/nsd/xfrd-notify.c
229
zone->pkts[index].send_time = 0;
usr.sbin/nsd/xfrd-notify.c
23
static void notify_enable(struct notify_zone* zone,
usr.sbin/nsd/xfrd-notify.c
230
zone->pkts[index].notify_query_id = 0;
usr.sbin/nsd/xfrd-notify.c
231
zone->notify_pkt_count--;
usr.sbin/nsd/xfrd-notify.c
235
notify_pkt_retry(struct notify_zone* zone, int index)
usr.sbin/nsd/xfrd-notify.c
237
if(++zone->pkts[index].notify_retry >=
usr.sbin/nsd/xfrd-notify.c
238
zone->options->pattern->notify_retry) {
usr.sbin/nsd/xfrd-notify.c
240
zone->apex_str,
usr.sbin/nsd/xfrd-notify.c
241
zone->pkts[index].dest->ip_address_spec);
usr.sbin/nsd/xfrd-notify.c
242
notify_pkt_done(zone, index);
usr.sbin/nsd/xfrd-notify.c
245
if(!xfrd_notify_send_udp(zone, index)) {
usr.sbin/nsd/xfrd-notify.c
246
notify_pkt_retry(zone, index);
usr.sbin/nsd/xfrd-notify.c
251
xfrd_handle_notify_reply(struct notify_zone* zone, buffer_type* packet,
usr.sbin/nsd/xfrd-notify.c
257
if(!zone->pkts[i].dest)
usr.sbin/nsd/xfrd-notify.c
26
static void setup_notify_active(struct notify_zone* zone);
usr.sbin/nsd/xfrd-notify.c
260
if(!cmp_addr_equal(src, srclen, zone->pkts[i].dest))
usr.sbin/nsd/xfrd-notify.c
262
if(reply_pkt_is_ack(zone, packet, i)) {
usr.sbin/nsd/xfrd-notify.c
264
notify_pkt_done(zone, i);
usr.sbin/nsd/xfrd-notify.c
268
notify_pkt_retry(zone, i);
usr.sbin/nsd/xfrd-notify.c
275
xfrd_notify_send_udp(struct notify_zone* zone, int index)
usr.sbin/nsd/xfrd-notify.c
279
if(!zone->pkts[index].dest) return 0;
usr.sbin/nsd/xfrd-notify.c
281
xfrd_setup_packet(packet, TYPE_SOA, CLASS_IN, zone->apex,
usr.sbin/nsd/xfrd-notify.c
283
zone->pkts[index].notify_query_id = ID(packet);
usr.sbin/nsd/xfrd-notify.c
286
if(zone->current_soa->serial != 0) {
usr.sbin/nsd/xfrd-notify.c
289
xfrd_write_soa_buffer(packet, zone->apex, zone->current_soa,
usr.sbin/nsd/xfrd-notify.c
292
if(zone->pkts[index].dest->key_options) {
usr.sbin/nsd/xfrd-notify.c
293
xfrd_tsig_sign_request(packet, &zone->notify_tsig, zone->pkts[index].dest);
usr.sbin/nsd/xfrd-notify.c
297
if((zone->pkts[index].dest->is_ipv6
usr.sbin/nsd/xfrd-notify.c
298
&& zone->notify_send6_handler.ev_fd == -1) ||
usr.sbin/nsd/xfrd-notify.c
299
(!zone->pkts[index].dest->is_ipv6
usr.sbin/nsd/xfrd-notify.c
300
&& zone->notify_send_handler.ev_fd == -1)) {
usr.sbin/nsd/xfrd-notify.c
302
int fd = xfrd_send_udp(zone->pkts[index].dest, packet,
usr.sbin/nsd/xfrd-notify.c
303
zone->options->pattern->outgoing_interface);
usr.sbin/nsd/xfrd-notify.c
306
zone->apex_str, zone->pkts[index].notify_retry,
usr.sbin/nsd/xfrd-notify.c
307
zone->pkts[index].dest->ip_address_spec);
usr.sbin/nsd/xfrd-notify.c
31
static int xfrd_notify_send_udp(struct notify_zone* zone, int index);
usr.sbin/nsd/xfrd-notify.c
310
if(zone->pkts[index].dest->is_ipv6)
usr.sbin/nsd/xfrd-notify.c
311
zone->notify_send6_handler.ev_fd = fd;
usr.sbin/nsd/xfrd-notify.c
312
else zone->notify_send_handler.ev_fd = fd;
usr.sbin/nsd/xfrd-notify.c
322
zone->pkts[index].dest, &to);
usr.sbin/nsd/xfrd-notify.c
323
if(zone->pkts[index].dest->is_ipv6
usr.sbin/nsd/xfrd-notify.c
324
&& zone->notify_send6_handler.ev_fd != -1)
usr.sbin/nsd/xfrd-notify.c
325
fd = zone->notify_send6_handler.ev_fd;
usr.sbin/nsd/xfrd-notify.c
326
else if (zone->notify_send_handler.ev_fd != -1)
usr.sbin/nsd/xfrd-notify.c
327
fd = zone->notify_send_handler.ev_fd;
usr.sbin/nsd/xfrd-notify.c
330
zone->pkts[index].dest->ip_address_spec,
usr.sbin/nsd/xfrd-notify.c
338
zone->pkts[index].dest->ip_address_spec,
usr.sbin/nsd/xfrd-notify.c
34
notify_send_disable(struct notify_zone* zone)
usr.sbin/nsd/xfrd-notify.c
343
zone->pkts[index].send_time = time(NULL);
usr.sbin/nsd/xfrd-notify.c
345
zone->apex_str, zone->pkts[index].notify_retry,
usr.sbin/nsd/xfrd-notify.c
346
zone->pkts[index].dest->ip_address_spec));
usr.sbin/nsd/xfrd-notify.c
351
notify_timeout_check(struct notify_zone* zone)
usr.sbin/nsd/xfrd-notify.c
356
if(!zone->pkts[i].dest)
usr.sbin/nsd/xfrd-notify.c
358
if(now >= zone->pkts[i].send_time + XFRD_NOTIFY_RETRY_TIMOUT) {
usr.sbin/nsd/xfrd-notify.c
359
notify_pkt_retry(zone, i);
usr.sbin/nsd/xfrd-notify.c
36
zone->notify_send_enable = 0;
usr.sbin/nsd/xfrd-notify.c
365
notify_start_pkts(struct notify_zone* zone)
usr.sbin/nsd/xfrd-notify.c
368
if(!zone->notify_current) return; /* no more acl to send to */
usr.sbin/nsd/xfrd-notify.c
37
event_del(&zone->notify_send_handler);
usr.sbin/nsd/xfrd-notify.c
372
while(zone->pkts[i].dest==NULL && zone->notify_current) {
usr.sbin/nsd/xfrd-notify.c
373
zone->pkts[i].dest = zone->notify_current;
usr.sbin/nsd/xfrd-notify.c
374
zone->notify_current = zone->notify_current->next;
usr.sbin/nsd/xfrd-notify.c
375
zone->pkts[i].notify_retry = 0;
usr.sbin/nsd/xfrd-notify.c
376
zone->pkts[i].notify_query_id = 0;
usr.sbin/nsd/xfrd-notify.c
377
zone->pkts[i].send_time = 0;
usr.sbin/nsd/xfrd-notify.c
378
zone->notify_pkt_count++;
usr.sbin/nsd/xfrd-notify.c
379
if(!xfrd_notify_send_udp(zone, i)) {
usr.sbin/nsd/xfrd-notify.c
38
if(zone->notify_send_handler.ev_fd != -1) {
usr.sbin/nsd/xfrd-notify.c
380
notify_pkt_retry(zone, i);
usr.sbin/nsd/xfrd-notify.c
387
notify_setup_event(struct notify_zone* zone)
usr.sbin/nsd/xfrd-notify.c
389
if(zone->notify_send_handler.ev_fd != -1) {
usr.sbin/nsd/xfrd-notify.c
39
close(zone->notify_send_handler.ev_fd);
usr.sbin/nsd/xfrd-notify.c
390
int fd = zone->notify_send_handler.ev_fd;
usr.sbin/nsd/xfrd-notify.c
391
if(zone->notify_send_enable) {
usr.sbin/nsd/xfrd-notify.c
392
event_del(&zone->notify_send_handler);
usr.sbin/nsd/xfrd-notify.c
394
zone->notify_timeout.tv_sec = XFRD_NOTIFY_RETRY_TIMOUT;
usr.sbin/nsd/xfrd-notify.c
395
memset(&zone->notify_send_handler, 0,
usr.sbin/nsd/xfrd-notify.c
396
sizeof(zone->notify_send_handler));
usr.sbin/nsd/xfrd-notify.c
397
event_set(&zone->notify_send_handler, fd, EV_READ | EV_TIMEOUT,
usr.sbin/nsd/xfrd-notify.c
398
xfrd_handle_notify_send, zone);
usr.sbin/nsd/xfrd-notify.c
399
if(event_base_set(xfrd->event_base, &zone->notify_send_handler) != 0)
usr.sbin/nsd/xfrd-notify.c
40
zone->notify_send_handler.ev_fd = -1;
usr.sbin/nsd/xfrd-notify.c
401
if(event_add(&zone->notify_send_handler, &zone->notify_timeout) != 0)
usr.sbin/nsd/xfrd-notify.c
403
zone->notify_send_enable = 1;
usr.sbin/nsd/xfrd-notify.c
405
if(zone->notify_send6_handler.ev_fd != -1) {
usr.sbin/nsd/xfrd-notify.c
406
int fd = zone->notify_send6_handler.ev_fd;
usr.sbin/nsd/xfrd-notify.c
407
if(zone->notify_send6_enable) {
usr.sbin/nsd/xfrd-notify.c
408
event_del(&zone->notify_send6_handler);
usr.sbin/nsd/xfrd-notify.c
410
zone->notify_timeout.tv_sec = XFRD_NOTIFY_RETRY_TIMOUT;
usr.sbin/nsd/xfrd-notify.c
411
memset(&zone->notify_send6_handler, 0,
usr.sbin/nsd/xfrd-notify.c
412
sizeof(zone->notify_send6_handler));
usr.sbin/nsd/xfrd-notify.c
413
event_set(&zone->notify_send6_handler, fd, EV_READ | EV_TIMEOUT,
usr.sbin/nsd/xfrd-notify.c
414
xfrd_handle_notify_send, zone);
usr.sbin/nsd/xfrd-notify.c
415
if(event_base_set(xfrd->event_base, &zone->notify_send6_handler) != 0)
usr.sbin/nsd/xfrd-notify.c
417
if(event_add(&zone->notify_send6_handler, &zone->notify_timeout) != 0)
usr.sbin/nsd/xfrd-notify.c
419
zone->notify_send6_enable = 1;
usr.sbin/nsd/xfrd-notify.c
426
struct notify_zone* zone = (struct notify_zone*)arg;
usr.sbin/nsd/xfrd-notify.c
428
if(zone->is_waiting) {
usr.sbin/nsd/xfrd-notify.c
430
"xfrd: notify waiting, skipped, %s", zone->apex_str));
usr.sbin/nsd/xfrd-notify.c
437
"xfrd: zone %s: read notify ACK", zone->apex_str));
usr.sbin/nsd/xfrd-notify.c
442
xfrd_handle_notify_reply(zone, packet,
usr.sbin/nsd/xfrd-notify.c
448
zone->apex_str));
usr.sbin/nsd/xfrd-notify.c
45
notify_send6_disable(struct notify_zone* zone)
usr.sbin/nsd/xfrd-notify.c
453
notify_timeout_check(zone);
usr.sbin/nsd/xfrd-notify.c
456
notify_start_pkts(zone);
usr.sbin/nsd/xfrd-notify.c
459
if(!zone->notify_current && !zone->notify_pkt_count) {
usr.sbin/nsd/xfrd-notify.c
463
zone->apex_str));
usr.sbin/nsd/xfrd-notify.c
464
notify_disable(zone);
usr.sbin/nsd/xfrd-notify.c
468
notify_setup_event(zone);
usr.sbin/nsd/xfrd-notify.c
47
zone->notify_send6_enable = 0;
usr.sbin/nsd/xfrd-notify.c
472
setup_notify_active(struct notify_zone* zone)
usr.sbin/nsd/xfrd-notify.c
474
zone->notify_pkt_count = 0;
usr.sbin/nsd/xfrd-notify.c
475
memset(zone->pkts, 0, sizeof(zone->pkts));
usr.sbin/nsd/xfrd-notify.c
476
zone->notify_current = zone->options->pattern->notify;
usr.sbin/nsd/xfrd-notify.c
477
zone->notify_timeout.tv_sec = 0;
usr.sbin/nsd/xfrd-notify.c
478
zone->notify_timeout.tv_usec = 0;
usr.sbin/nsd/xfrd-notify.c
48
event_del(&zone->notify_send6_handler);
usr.sbin/nsd/xfrd-notify.c
480
if(zone->notify_send_enable)
usr.sbin/nsd/xfrd-notify.c
481
notify_send_disable(zone);
usr.sbin/nsd/xfrd-notify.c
482
memset(&zone->notify_send_handler, 0,
usr.sbin/nsd/xfrd-notify.c
483
sizeof(zone->notify_send_handler));
usr.sbin/nsd/xfrd-notify.c
484
event_set(&zone->notify_send_handler, -1, EV_TIMEOUT,
usr.sbin/nsd/xfrd-notify.c
485
xfrd_handle_notify_send, zone);
usr.sbin/nsd/xfrd-notify.c
486
if(event_base_set(xfrd->event_base, &zone->notify_send_handler) != 0)
usr.sbin/nsd/xfrd-notify.c
488
if(evtimer_add(&zone->notify_send_handler, &zone->notify_timeout) != 0)
usr.sbin/nsd/xfrd-notify.c
49
if(zone->notify_send6_handler.ev_fd != -1) {
usr.sbin/nsd/xfrd-notify.c
490
zone->notify_send_enable = 1;
usr.sbin/nsd/xfrd-notify.c
494
notify_enable(struct notify_zone* zone, struct xfrd_soa* new_soa)
usr.sbin/nsd/xfrd-notify.c
496
if(!zone->options->pattern->notify) {
usr.sbin/nsd/xfrd-notify.c
50
close(zone->notify_send6_handler.ev_fd);
usr.sbin/nsd/xfrd-notify.c
501
memset(zone->current_soa, 0, sizeof(xfrd_soa_type));
usr.sbin/nsd/xfrd-notify.c
503
memcpy(zone->current_soa, new_soa, sizeof(xfrd_soa_type));
usr.sbin/nsd/xfrd-notify.c
504
if(zone->is_waiting)
usr.sbin/nsd/xfrd-notify.c
508
setup_notify_active(zone);
usr.sbin/nsd/xfrd-notify.c
51
zone->notify_send6_handler.ev_fd = -1;
usr.sbin/nsd/xfrd-notify.c
513
zone->notify_current = zone->options->pattern->notify;
usr.sbin/nsd/xfrd-notify.c
514
zone->is_waiting = 1;
usr.sbin/nsd/xfrd-notify.c
515
zone->waiting_next = NULL;
usr.sbin/nsd/xfrd-notify.c
516
zone->waiting_prev = xfrd->notify_waiting_last;
usr.sbin/nsd/xfrd-notify.c
518
xfrd->notify_waiting_last->waiting_next = zone;
usr.sbin/nsd/xfrd-notify.c
520
xfrd->notify_waiting_first = zone;
usr.sbin/nsd/xfrd-notify.c
522
xfrd->notify_waiting_last = zone;
usr.sbin/nsd/xfrd-notify.c
524
zone->apex_str));
usr.sbin/nsd/xfrd-notify.c
528
xfrd_notify_start(struct notify_zone* zone, struct xfrd_state* xfrd)
usr.sbin/nsd/xfrd-notify.c
531
if(zone->is_waiting || zone->notify_send_enable ||
usr.sbin/nsd/xfrd-notify.c
532
zone->notify_send6_enable)
usr.sbin/nsd/xfrd-notify.c
534
xz = (xfrd_zone_type*)rbtree_search(xfrd->zones, zone->apex);
usr.sbin/nsd/xfrd-notify.c
536
notify_enable(zone, &xz->soa_nsd);
usr.sbin/nsd/xfrd-notify.c
537
else notify_enable(zone, NULL);
usr.sbin/nsd/xfrd-notify.c
544
struct notify_zone* zone = (struct notify_zone*)
usr.sbin/nsd/xfrd-notify.c
546
assert(zone);
usr.sbin/nsd/xfrd-notify.c
547
if(zone->notify_send_enable || zone->notify_send6_enable)
usr.sbin/nsd/xfrd-notify.c
548
notify_disable(zone);
usr.sbin/nsd/xfrd-notify.c
550
notify_enable(zone, new_soa);
usr.sbin/nsd/xfrd-notify.c
558
struct notify_zone* zone = (struct notify_zone*)
usr.sbin/nsd/xfrd-notify.c
56
notify_disable(struct notify_zone* zone)
usr.sbin/nsd/xfrd-notify.c
560
if(!zone) return; /* got SOAINFO but zone was deleted meanwhile */
usr.sbin/nsd/xfrd-notify.c
563
if( (new_soa == NULL && zone->current_soa->serial == 0) ||
usr.sbin/nsd/xfrd-notify.c
564
(new_soa && new_soa->serial == zone->current_soa->serial))
usr.sbin/nsd/xfrd-notify.c
566
if(zone->notify_send_enable || zone->notify_send6_enable)
usr.sbin/nsd/xfrd-notify.c
567
notify_disable(zone);
usr.sbin/nsd/xfrd-notify.c
568
notify_enable(zone, new_soa);
usr.sbin/nsd/xfrd-notify.c
574
struct notify_zone* zone;
usr.sbin/nsd/xfrd-notify.c
575
RBTREE_FOR(zone, struct notify_zone*, tree)
usr.sbin/nsd/xfrd-notify.c
577
if(zone->notify_send_enable || zone->notify_send6_enable)
usr.sbin/nsd/xfrd-notify.c
578
notify_send_disable(zone);
usr.sbin/nsd/xfrd-notify.c
58
zone->notify_current = 0;
usr.sbin/nsd/xfrd-notify.c
60
if(zone->notify_send_enable) {
usr.sbin/nsd/xfrd-notify.c
61
notify_send_disable(zone);
usr.sbin/nsd/xfrd-notify.c
63
if(zone->notify_send6_enable) {
usr.sbin/nsd/xfrd-notify.c
64
notify_send6_disable(zone);
usr.sbin/nsd/xfrd-notify.c
83
zone->apex_str) );
usr.sbin/nsd/xfrd-notify.h
31
struct zone;
usr.sbin/nsd/xfrd-notify.h
89
void xfrd_notify_start(struct notify_zone* zone, struct xfrd_state* xfrd);
usr.sbin/nsd/xfrd-notify.h
99
void notify_disable(struct notify_zone* zone);
usr.sbin/nsd/xfrd-tcp.c
1000
zone->master->tls_auth_options->client_key) {
usr.sbin/nsd/xfrd-tcp.c
1002
zone->master->tls_auth_options->client_cert) != 1) {
usr.sbin/nsd/xfrd-tcp.c
1003
log_msg(LOG_ERR, "xfrd tls: Unable to load client certificate from file %s", zone->master->tls_auth_options->client_cert);
usr.sbin/nsd/xfrd-tcp.c
1006
if (zone->master->tls_auth_options->client_key_pw) {
usr.sbin/nsd/xfrd-tcp.c
1008
SSL_CTX_set_default_passwd_cb_userdata(set->ssl_ctx, zone->master->tls_auth_options->client_key_pw);
usr.sbin/nsd/xfrd-tcp.c
1011
if (SSL_CTX_use_PrivateKey_file(set->ssl_ctx, zone->master->tls_auth_options->client_key, SSL_FILETYPE_PEM) != 1) {
usr.sbin/nsd/xfrd-tcp.c
1012
log_msg(LOG_ERR, "xfrd tls: Unable to load private key from file %s", zone->master->tls_auth_options->client_key);
usr.sbin/nsd/xfrd-tcp.c
1017
zone->master->tls_auth_options->client_key,
usr.sbin/nsd/xfrd-tcp.c
1018
zone->master->tls_auth_options->client_cert);
usr.sbin/nsd/xfrd-tcp.c
1031
if (!setup_ssl(tp, set, zone->master->tls_auth_options->auth_domain_name)) {
usr.sbin/nsd/xfrd-tcp.c
1033
zone->apex_str, zone->master->ip_address_spec);
usr.sbin/nsd/xfrd-tcp.c
1035
xfrd_set_refresh_now(zone);
usr.sbin/nsd/xfrd-tcp.c
1043
"for %s to %s: %s", zone->apex_str,
usr.sbin/nsd/xfrd-tcp.c
1044
zone->master->ip_address_spec,
usr.sbin/nsd/xfrd-tcp.c
1051
zone->apex_str,
usr.sbin/nsd/xfrd-tcp.c
1052
zone->master->ip_address_spec);
usr.sbin/nsd/xfrd-tcp.c
1056
"for %s to %s with %d", zone->apex_str,
usr.sbin/nsd/xfrd-tcp.c
1057
zone->master->ip_address_spec,
usr.sbin/nsd/xfrd-tcp.c
1061
xfrd_set_refresh_now(zone);
usr.sbin/nsd/xfrd-tcp.c
1067
zone->apex_str, zone->master->ip_address_spec);
usr.sbin/nsd/xfrd-tcp.c
1069
xfrd_set_refresh_now(zone);
usr.sbin/nsd/xfrd-tcp.c
1098
xfrd_tcp_setup_write_packet(struct xfrd_tcp_pipeline* tp, xfrd_zone_type* zone)
usr.sbin/nsd/xfrd-tcp.c
1101
assert(zone->tcp_conn != -1);
usr.sbin/nsd/xfrd-tcp.c
1102
assert(zone->tcp_waiting == 0);
usr.sbin/nsd/xfrd-tcp.c
1104
if(zone->soa_disk_acquired == 0 || zone->master->use_axfr_only ||
usr.sbin/nsd/xfrd-tcp.c
1105
zone->master->ixfr_disabled ||
usr.sbin/nsd/xfrd-tcp.c
1108
(zone->state == xfrd_zone_expired && zone->round_num != 0)) {
usr.sbin/nsd/xfrd-tcp.c
1111
zone->apex_str, zone->master->ip_address_spec));
usr.sbin/nsd/xfrd-tcp.c
1114
zone->apex_str, zone->master->ip_address_spec));
usr.sbin/nsd/xfrd-tcp.c
1116
xfrd_setup_packet(tcp->packet, TYPE_AXFR, CLASS_IN, zone->apex,
usr.sbin/nsd/xfrd-tcp.c
1117
zone->query_id, NULL);
usr.sbin/nsd/xfrd-tcp.c
1118
xfrd_prepare_zone_xfr(zone, TYPE_AXFR);
usr.sbin/nsd/xfrd-tcp.c
1123
zone->apex_str, zone->master->ip_address_spec));
usr.sbin/nsd/xfrd-tcp.c
1126
zone->apex_str, zone->master->ip_address_spec));
usr.sbin/nsd/xfrd-tcp.c
1128
xfrd_setup_packet(tcp->packet, TYPE_IXFR, CLASS_IN, zone->apex,
usr.sbin/nsd/xfrd-tcp.c
1129
zone->query_id, &apex_compress);
usr.sbin/nsd/xfrd-tcp.c
1130
xfrd_prepare_zone_xfr(zone, TYPE_IXFR);
usr.sbin/nsd/xfrd-tcp.c
1132
xfrd_write_soa_buffer(tcp->packet, zone->apex, &zone->soa_disk,
usr.sbin/nsd/xfrd-tcp.c
1135
if(zone->master->key_options && zone->master->key_options->tsig_key) {
usr.sbin/nsd/xfrd-tcp.c
1137
tcp->packet, &zone->latest_xfr->tsig, zone->master);
usr.sbin/nsd/xfrd-tcp.c
1140
DEBUG(DEBUG_XFRD,1, (LOG_INFO, "sent tcp query with ID %d", zone->query_id));
usr.sbin/nsd/xfrd-tcp.c
1297
xfrd_tcp_write(struct xfrd_tcp_pipeline* tp, xfrd_zone_type* zone)
usr.sbin/nsd/xfrd-tcp.c
1301
assert(zone->tcp_conn != -1);
usr.sbin/nsd/xfrd-tcp.c
1302
assert(zone == tp->tcp_send_first);
usr.sbin/nsd/xfrd-tcp.c
1316
zone->apex_str, zone->master->ip_address_spec,
usr.sbin/nsd/xfrd-tcp.c
1361
tcp_pipe_sendlist_popfirst(tp, zone);
usr.sbin/nsd/xfrd-tcp.c
1579
xfrd_zone_type* zone;
usr.sbin/nsd/xfrd-tcp.c
1629
zone = xfrd_tcp_pipeline_lookup_id(tp, ID(tcp->packet));
usr.sbin/nsd/xfrd-tcp.c
1630
if(!zone || zone == TCP_NULL_SKIP) {
usr.sbin/nsd/xfrd-tcp.c
1634
zone?"set-to-skip":"unknown"));
usr.sbin/nsd/xfrd-tcp.c
1638
assert(zone->tcp_conn != -1);
usr.sbin/nsd/xfrd-tcp.c
1641
pkt_result = xfrd_handle_received_xfr_packet(zone, tcp->packet);
usr.sbin/nsd/xfrd-tcp.c
1650
xfrd_tcp_pipeline_skip_id(tp, zone->query_id);
usr.sbin/nsd/xfrd-tcp.c
1655
if(zone->zone_options->pattern->multi_primary_check) {
usr.sbin/nsd/xfrd-tcp.c
1656
xfrd_tcp_release(xfrd->tcp_set, zone);
usr.sbin/nsd/xfrd-tcp.c
1657
xfrd_make_request(zone);
usr.sbin/nsd/xfrd-tcp.c
1660
xfrd_tcp_release(xfrd->tcp_set, zone);
usr.sbin/nsd/xfrd-tcp.c
1661
assert(zone->round_num == -1);
usr.sbin/nsd/xfrd-tcp.c
1664
xfrd_disable_ixfr(zone);
usr.sbin/nsd/xfrd-tcp.c
1665
xfrd_tcp_release(xfrd->tcp_set, zone);
usr.sbin/nsd/xfrd-tcp.c
1667
xfrd_make_request(zone);
usr.sbin/nsd/xfrd-tcp.c
1673
xfrd_tcp_pipeline_skip_id(tp, zone->query_id);
usr.sbin/nsd/xfrd-tcp.c
1675
xfrd_tcp_release(xfrd->tcp_set, zone);
usr.sbin/nsd/xfrd-tcp.c
1677
xfrd_make_request(zone);
usr.sbin/nsd/xfrd-tcp.c
1683
xfrd_tcp_release(struct xfrd_tcp_set* set, xfrd_zone_type* zone)
usr.sbin/nsd/xfrd-tcp.c
1685
int conn = zone->tcp_conn;
usr.sbin/nsd/xfrd-tcp.c
1688
zone->apex_str, zone->master->ip_address_spec));
usr.sbin/nsd/xfrd-tcp.c
1689
assert(zone->tcp_conn != -1);
usr.sbin/nsd/xfrd-tcp.c
1690
assert(zone->tcp_waiting == 0);
usr.sbin/nsd/xfrd-tcp.c
1691
zone->tcp_conn = -1;
usr.sbin/nsd/xfrd-tcp.c
1692
zone->tcp_waiting = 0;
usr.sbin/nsd/xfrd-tcp.c
1695
tcp_pipe_sendlist_remove(tp, zone);
usr.sbin/nsd/xfrd-tcp.c
1697
if(xfrd_tcp_pipeline_lookup_id(tp, zone->query_id) != TCP_NULL_SKIP)
usr.sbin/nsd/xfrd-tcp.c
1698
tcp_pipe_id_remove(tp, zone, 1);
usr.sbin/nsd/xfrd-tcp.c
1713
zone = set->tcp_waiting_first;
usr.sbin/nsd/xfrd-tcp.c
1714
assert(zone->tcp_conn == -1);
usr.sbin/nsd/xfrd-tcp.c
1715
zone->tcp_conn = conn;
usr.sbin/nsd/xfrd-tcp.c
1716
tcp_zone_waiting_list_popfirst(set, zone);
usr.sbin/nsd/xfrd-tcp.c
1717
if(zone->zone_handler.ev_fd != -1)
usr.sbin/nsd/xfrd-tcp.c
1718
xfrd_udp_release(zone);
usr.sbin/nsd/xfrd-tcp.c
1719
xfrd_unset_timer(zone);
usr.sbin/nsd/xfrd-tcp.c
1720
pipeline_setup_new_zone(set, tp, zone);
usr.sbin/nsd/xfrd-tcp.c
1765
xfrd_zone_type* zone = set->tcp_waiting_first;
usr.sbin/nsd/xfrd-tcp.c
1767
assert(zone->tcp_conn == -1);
usr.sbin/nsd/xfrd-tcp.c
1768
zone->tcp_conn = conn;
usr.sbin/nsd/xfrd-tcp.c
1769
tcp_zone_waiting_list_popfirst(set, zone);
usr.sbin/nsd/xfrd-tcp.c
1772
if(zone->zone_handler.ev_fd != -1)
usr.sbin/nsd/xfrd-tcp.c
1773
xfrd_udp_release(zone);
usr.sbin/nsd/xfrd-tcp.c
1774
if(!xfrd_tcp_open(set, tp, zone)) {
usr.sbin/nsd/xfrd-tcp.c
1775
zone->tcp_conn = -1;
usr.sbin/nsd/xfrd-tcp.c
1776
xfrd_set_refresh_now(zone);
usr.sbin/nsd/xfrd-tcp.c
1787
xfrd_unset_timer(zone);
usr.sbin/nsd/xfrd-tcp.c
1788
pipeline_setup_new_zone(set, tp, zone);
usr.sbin/nsd/xfrd-tcp.c
413
return ((struct xfrd_tcp_pipeline_id*)n)->zone;
usr.sbin/nsd/xfrd-tcp.c
420
struct xfrd_zone* zone)
usr.sbin/nsd/xfrd-tcp.c
433
n->zone = zone;
usr.sbin/nsd/xfrd-tcp.c
465
zid->zone = TCP_NULL_SKIP;
usr.sbin/nsd/xfrd-tcp.c
629
pipeline_find(struct xfrd_tcp_set* set, xfrd_zone_type* zone)
usr.sbin/nsd/xfrd-tcp.c
638
key->ip_len = xfrd_acl_sockaddr_to(zone->master, &key->ip);
usr.sbin/nsd/xfrd-tcp.c
661
tcp_zone_waiting_list_popfirst(struct xfrd_tcp_set* set, xfrd_zone_type* zone)
usr.sbin/nsd/xfrd-tcp.c
663
assert(zone->tcp_waiting);
usr.sbin/nsd/xfrd-tcp.c
664
set->tcp_waiting_first = zone->tcp_waiting_next;
usr.sbin/nsd/xfrd-tcp.c
665
if(zone->tcp_waiting_next)
usr.sbin/nsd/xfrd-tcp.c
666
zone->tcp_waiting_next->tcp_waiting_prev = NULL;
usr.sbin/nsd/xfrd-tcp.c
668
zone->tcp_waiting_next = 0;
usr.sbin/nsd/xfrd-tcp.c
669
zone->tcp_waiting = 0;
usr.sbin/nsd/xfrd-tcp.c
674
tcp_pipe_sendlist_remove(struct xfrd_tcp_pipeline* tp, xfrd_zone_type* zone)
usr.sbin/nsd/xfrd-tcp.c
676
if(zone->in_tcp_send) {
usr.sbin/nsd/xfrd-tcp.c
677
if(zone->tcp_send_prev)
usr.sbin/nsd/xfrd-tcp.c
678
zone->tcp_send_prev->tcp_send_next=zone->tcp_send_next;
usr.sbin/nsd/xfrd-tcp.c
679
else tp->tcp_send_first=zone->tcp_send_next;
usr.sbin/nsd/xfrd-tcp.c
680
if(zone->tcp_send_next)
usr.sbin/nsd/xfrd-tcp.c
681
zone->tcp_send_next->tcp_send_prev=zone->tcp_send_prev;
usr.sbin/nsd/xfrd-tcp.c
682
else tp->tcp_send_last=zone->tcp_send_prev;
usr.sbin/nsd/xfrd-tcp.c
683
zone->in_tcp_send = 0;
usr.sbin/nsd/xfrd-tcp.c
689
tcp_pipe_sendlist_popfirst(struct xfrd_tcp_pipeline* tp, xfrd_zone_type* zone)
usr.sbin/nsd/xfrd-tcp.c
691
tp->tcp_send_first = zone->tcp_send_next;
usr.sbin/nsd/xfrd-tcp.c
695
zone->in_tcp_send = 0;
usr.sbin/nsd/xfrd-tcp.c
700
tcp_pipe_id_remove(struct xfrd_tcp_pipeline* tp, xfrd_zone_type* zone,
usr.sbin/nsd/xfrd-tcp.c
705
xfrd_tcp_pipeline_remove_id(tp, zone->query_id);
usr.sbin/nsd/xfrd-tcp.c
706
tp->unused[tp->key.num_unused] = zone->query_id;
usr.sbin/nsd/xfrd-tcp.c
724
xfrd_zone_type* zone = zid->zone;
usr.sbin/nsd/xfrd-tcp.c
725
if(zone && zone != TCP_NULL_SKIP) {
usr.sbin/nsd/xfrd-tcp.c
726
assert(zone->query_id == zid->id);
usr.sbin/nsd/xfrd-tcp.c
727
conn = zone->tcp_conn;
usr.sbin/nsd/xfrd-tcp.c
728
zone->tcp_conn = -1;
usr.sbin/nsd/xfrd-tcp.c
729
zone->tcp_waiting = 0;
usr.sbin/nsd/xfrd-tcp.c
730
tcp_pipe_sendlist_remove(tp, zone);
usr.sbin/nsd/xfrd-tcp.c
731
tcp_pipe_id_remove(tp, zone, 0);
usr.sbin/nsd/xfrd-tcp.c
732
xfrd_set_refresh_now(zone);
usr.sbin/nsd/xfrd-tcp.c
796
xfrd_zone_type* zone)
usr.sbin/nsd/xfrd-tcp.c
803
zone->query_id = tp->unused[idx];
usr.sbin/nsd/xfrd-tcp.c
805
xfrd_tcp_pipeline_insert_id(tp, zone->query_id, zone);
usr.sbin/nsd/xfrd-tcp.c
812
zone->tcp_send_next = NULL;
usr.sbin/nsd/xfrd-tcp.c
813
zone->tcp_send_prev = tp->tcp_send_last;
usr.sbin/nsd/xfrd-tcp.c
814
zone->in_tcp_send = 1;
usr.sbin/nsd/xfrd-tcp.c
816
tp->tcp_send_last->tcp_send_next = zone;
usr.sbin/nsd/xfrd-tcp.c
817
else tp->tcp_send_first = zone;
usr.sbin/nsd/xfrd-tcp.c
818
tp->tcp_send_last = zone;
usr.sbin/nsd/xfrd-tcp.c
821
if(tp->tcp_send_first == zone) {
usr.sbin/nsd/xfrd-tcp.c
822
xfrd_tcp_setup_write_packet(tp, zone);
usr.sbin/nsd/xfrd-tcp.c
829
xfrd_tcp_obtain(struct xfrd_tcp_set* set, xfrd_zone_type* zone)
usr.sbin/nsd/xfrd-tcp.c
832
assert(zone->tcp_conn == -1);
usr.sbin/nsd/xfrd-tcp.c
833
assert(zone->tcp_waiting == 0);
usr.sbin/nsd/xfrd-tcp.c
842
zone->tcp_conn = i;
usr.sbin/nsd/xfrd-tcp.c
847
if (zone->tcp_conn < 0) {
usr.sbin/nsd/xfrd-tcp.c
851
tp = set->tcp_state[zone->tcp_conn];
usr.sbin/nsd/xfrd-tcp.c
852
zone->tcp_waiting = 0;
usr.sbin/nsd/xfrd-tcp.c
855
if(zone->zone_handler.ev_fd != -1)
usr.sbin/nsd/xfrd-tcp.c
856
xfrd_udp_release(zone);
usr.sbin/nsd/xfrd-tcp.c
858
if(!xfrd_tcp_open(set, tp, zone)) {
usr.sbin/nsd/xfrd-tcp.c
859
zone->tcp_conn = -1;
usr.sbin/nsd/xfrd-tcp.c
861
xfrd_set_refresh_now(zone);
usr.sbin/nsd/xfrd-tcp.c
869
xfrd_deactivate_zone(zone);
usr.sbin/nsd/xfrd-tcp.c
870
xfrd_unset_timer(zone);
usr.sbin/nsd/xfrd-tcp.c
871
pipeline_setup_new_zone(set, tp, zone);
usr.sbin/nsd/xfrd-tcp.c
875
if((tp = pipeline_find(set, zone))!= NULL) {
usr.sbin/nsd/xfrd-tcp.c
877
if(zone->zone_handler.ev_fd != -1)
usr.sbin/nsd/xfrd-tcp.c
878
xfrd_udp_release(zone);
usr.sbin/nsd/xfrd-tcp.c
881
zone->tcp_conn = i;
usr.sbin/nsd/xfrd-tcp.c
883
xfrd_deactivate_zone(zone);
usr.sbin/nsd/xfrd-tcp.c
884
xfrd_unset_timer(zone);
usr.sbin/nsd/xfrd-tcp.c
885
pipeline_setup_new_zone(set, tp, zone);
usr.sbin/nsd/xfrd-tcp.c
892
zone->tcp_waiting_next = 0;
usr.sbin/nsd/xfrd-tcp.c
893
zone->tcp_waiting_prev = set->tcp_waiting_last;
usr.sbin/nsd/xfrd-tcp.c
894
zone->tcp_waiting = 1;
usr.sbin/nsd/xfrd-tcp.c
896
set->tcp_waiting_first = zone;
usr.sbin/nsd/xfrd-tcp.c
897
set->tcp_waiting_last = zone;
usr.sbin/nsd/xfrd-tcp.c
899
set->tcp_waiting_last->tcp_waiting_next = zone;
usr.sbin/nsd/xfrd-tcp.c
900
set->tcp_waiting_last = zone;
usr.sbin/nsd/xfrd-tcp.c
902
xfrd_deactivate_zone(zone);
usr.sbin/nsd/xfrd-tcp.c
903
xfrd_unset_timer(zone);
usr.sbin/nsd/xfrd-tcp.c
908
xfrd_zone_type* zone)
usr.sbin/nsd/xfrd-tcp.c
912
assert(zone->tcp_conn != -1);
usr.sbin/nsd/xfrd-tcp.c
916
if(!zone->master) {
usr.sbin/nsd/xfrd-tcp.c
917
zone->master = zone->zone_options->pattern->request_xfr;
usr.sbin/nsd/xfrd-tcp.c
918
zone->master_num = 0;
usr.sbin/nsd/xfrd-tcp.c
922
zone->apex_str, zone->master->ip_address_spec));
usr.sbin/nsd/xfrd-tcp.c
932
if(zone->master->is_ipv6) {
usr.sbin/nsd/xfrd-tcp.c
936
xfrd_set_refresh_now(zone);
usr.sbin/nsd/xfrd-tcp.c
948
zone->master->ip_address_spec, strerror(errno));
usr.sbin/nsd/xfrd-tcp.c
949
xfrd_set_refresh_now(zone);
usr.sbin/nsd/xfrd-tcp.c
955
xfrd_set_refresh_now(zone);
usr.sbin/nsd/xfrd-tcp.c
972
tp->key.ip_len = xfrd_acl_sockaddr_to(zone->master, &tp->key.ip);
usr.sbin/nsd/xfrd-tcp.c
975
if (!xfrd_bind_local_interface(fd, zone->zone_options->pattern->
usr.sbin/nsd/xfrd-tcp.c
976
outgoing_interface, zone->master, 1)) {
usr.sbin/nsd/xfrd-tcp.c
978
xfrd_set_refresh_now(zone);
usr.sbin/nsd/xfrd-tcp.c
985
zone->master->ip_address_spec, strerror(errno));
usr.sbin/nsd/xfrd-tcp.c
987
xfrd_set_refresh_now(zone);
usr.sbin/nsd/xfrd-tcp.c
995
if (zone->master->tls_auth_options &&
usr.sbin/nsd/xfrd-tcp.c
996
zone->master->tls_auth_options->auth_domain_name) {
usr.sbin/nsd/xfrd-tcp.c
999
if (zone->master->tls_auth_options->client_cert &&
usr.sbin/nsd/xfrd-tcp.h
187
void xfrd_tcp_obtain(struct xfrd_tcp_set* set, struct xfrd_zone* zone);
usr.sbin/nsd/xfrd-tcp.h
189
void xfrd_tcp_release(struct xfrd_tcp_set* set, struct xfrd_zone* zone);
usr.sbin/nsd/xfrd-tcp.h
195
struct xfrd_zone* zone);
usr.sbin/nsd/xfrd-tcp.h
198
struct xfrd_zone* zone);
usr.sbin/nsd/xfrd-tcp.h
202
void xfrd_tcp_write(struct xfrd_tcp_pipeline* tp, struct xfrd_zone* zone);
usr.sbin/nsd/xfrd-tcp.h
92
struct xfrd_zone* zone;
usr.sbin/nsd/xfrd.c
102
static void xfrd_udp_read(xfrd_zone_type* zone);
usr.sbin/nsd/xfrd.c
105
static int find_same_master_notify(xfrd_zone_type* zone, int acl_num_nfy);
usr.sbin/nsd/xfrd.c
1075
xfrd_set_timer_refresh(xfrd_zone_type* zone)
usr.sbin/nsd/xfrd.c
1080
if(zone->soa_disk_acquired == 0 || zone->state != xfrd_zone_ok) {
usr.sbin/nsd/xfrd.c
1081
xfrd_set_timer_retry(zone);
usr.sbin/nsd/xfrd.c
1085
set_refresh = bound_soa_disk_refresh(zone);
usr.sbin/nsd/xfrd.c
1086
set_expire = bound_soa_disk_expire(zone);
usr.sbin/nsd/xfrd.c
1087
set = zone->soa_disk_acquired + ( set_refresh < set_expire
usr.sbin/nsd/xfrd.c
1091
xfrd_set_timer(zone, within_refresh_bounds(zone,
usr.sbin/nsd/xfrd.c
1097
xfrd_set_timer_retry(xfrd_zone_type* zone)
usr.sbin/nsd/xfrd.c
110
static void xfrd_free_zone_xfr(xfrd_zone_type* zone, xfrd_xfr_type* xfr);
usr.sbin/nsd/xfrd.c
1103
if(zone->fresh_xfr_timeout == 0)
usr.sbin/nsd/xfrd.c
1104
zone->fresh_xfr_timeout = XFRD_TRANSFER_TIMEOUT_START;
usr.sbin/nsd/xfrd.c
1108
zone->fresh_xfr_timeout *= 2;
usr.sbin/nsd/xfrd.c
1109
if(zone->fresh_xfr_timeout > XFRD_TRANSFER_TIMEOUT_MAX)
usr.sbin/nsd/xfrd.c
1110
zone->fresh_xfr_timeout = XFRD_TRANSFER_TIMEOUT_MAX;
usr.sbin/nsd/xfrd.c
1113
mult = zone->fresh_xfr_timeout / XFRD_TRANSFER_TIMEOUT_START;
usr.sbin/nsd/xfrd.c
1117
if(zone->soa_disk_acquired == 0) {
usr.sbin/nsd/xfrd.c
1121
xfrd_set_timer(zone,
usr.sbin/nsd/xfrd.c
1122
within_retry_bounds(zone, zone->fresh_xfr_timeout
usr.sbin/nsd/xfrd.c
1123
+ random_generate(zone->fresh_xfr_timeout)));
usr.sbin/nsd/xfrd.c
1127
set_retry = within_retry_bounds(zone,
usr.sbin/nsd/xfrd.c
1128
ntohl(zone->soa_disk.retry) * mult);
usr.sbin/nsd/xfrd.c
1129
if(zone->state == xfrd_zone_expired) {
usr.sbin/nsd/xfrd.c
1130
xfrd_set_timer(zone, set_retry);
usr.sbin/nsd/xfrd.c
1134
set_expire = zone->soa_disk_acquired + bound_soa_disk_expire(zone);
usr.sbin/nsd/xfrd.c
1136
xfrd_set_timer(zone, set_retry);
usr.sbin/nsd/xfrd.c
1145
xfrd_set_timer(zone, within_retry_bounds(zone,
usr.sbin/nsd/xfrd.c
1153
xfrd_zone_type* zone = (xfrd_zone_type*)arg;
usr.sbin/nsd/xfrd.c
1155
if(zone->tcp_conn != -1) {
usr.sbin/nsd/xfrd.c
1159
DEBUG(DEBUG_XFRD,1, (LOG_INFO, "xfrd: zone %s event tcp", zone->apex_str));
usr.sbin/nsd/xfrd.c
1160
xfrd_tcp_release(xfrd->tcp_set, zone);
usr.sbin/nsd/xfrd.c
1167
DEBUG(DEBUG_XFRD,1, (LOG_INFO, "xfrd: zone %s event udp read", zone->apex_str));
usr.sbin/nsd/xfrd.c
1168
xfrd_udp_read(zone);
usr.sbin/nsd/xfrd.c
1173
DEBUG(DEBUG_XFRD,1, (LOG_INFO, "xfrd: zone %s timeout", zone->apex_str));
usr.sbin/nsd/xfrd.c
1174
if(zone->zone_handler.ev_fd != -1 && zone->event_added &&
usr.sbin/nsd/xfrd.c
1176
assert(zone->tcp_conn == -1);
usr.sbin/nsd/xfrd.c
1177
xfrd_udp_release(zone);
usr.sbin/nsd/xfrd.c
1180
if(zone->tcp_waiting) {
usr.sbin/nsd/xfrd.c
1182
zone->apex_str));
usr.sbin/nsd/xfrd.c
1183
xfrd_unset_timer(zone);
usr.sbin/nsd/xfrd.c
1186
if(zone->udp_waiting) {
usr.sbin/nsd/xfrd.c
1188
zone->apex_str));
usr.sbin/nsd/xfrd.c
1189
xfrd_unset_timer(zone);
usr.sbin/nsd/xfrd.c
1193
if(zone->soa_disk_acquired)
usr.sbin/nsd/xfrd.c
1195
if (zone->state != xfrd_zone_expired &&
usr.sbin/nsd/xfrd.c
1196
xfrd_time() >= zone->soa_disk_acquired
usr.sbin/nsd/xfrd.c
1197
+ bound_soa_disk_expire(zone)) {
usr.sbin/nsd/xfrd.c
1199
log_msg(LOG_ERR, "xfrd: zone %s has expired", zone->apex_str);
usr.sbin/nsd/xfrd.c
1200
xfrd_set_zone_state(zone, xfrd_zone_expired);
usr.sbin/nsd/xfrd.c
1202
else if(zone->state == xfrd_zone_ok &&
usr.sbin/nsd/xfrd.c
1203
xfrd_time() >= zone->soa_disk_acquired
usr.sbin/nsd/xfrd.c
1204
+ bound_soa_disk_refresh(zone)) {
usr.sbin/nsd/xfrd.c
1206
DEBUG(DEBUG_XFRD,1, (LOG_INFO, "xfrd: zone %s is refreshing", zone->apex_str));
usr.sbin/nsd/xfrd.c
1207
xfrd_set_zone_state(zone, xfrd_zone_refreshing);
usr.sbin/nsd/xfrd.c
1212
if(zone->zone_handler.ev_fd == -1 && zone->tcp_conn == -1) {
usr.sbin/nsd/xfrd.c
1214
xfrd_make_request(zone);
usr.sbin/nsd/xfrd.c
1219
xfrd_make_request(xfrd_zone_type* zone)
usr.sbin/nsd/xfrd.c
1221
if(zone->next_master != -1) {
usr.sbin/nsd/xfrd.c
1225
zone->apex_str, zone->next_master));
usr.sbin/nsd/xfrd.c
1226
zone->master_num = zone->next_master;
usr.sbin/nsd/xfrd.c
1227
zone->master = acl_find_num(zone->zone_options->pattern->
usr.sbin/nsd/xfrd.c
1228
request_xfr, zone->master_num);
usr.sbin/nsd/xfrd.c
1230
if(!zone->master) {
usr.sbin/nsd/xfrd.c
1231
zone->master = zone->zone_options->pattern->request_xfr;
usr.sbin/nsd/xfrd.c
1232
zone->master_num = 0;
usr.sbin/nsd/xfrd.c
1235
zone->next_master = -1;
usr.sbin/nsd/xfrd.c
1236
zone->round_num = 0; /* fresh set of retries after notify */
usr.sbin/nsd/xfrd.c
1240
if(zone->round_num != -1 && zone->master && zone->master->next)
usr.sbin/nsd/xfrd.c
1243
zone->master = zone->master->next;
usr.sbin/nsd/xfrd.c
1244
zone->master_num++;
usr.sbin/nsd/xfrd.c
1247
zone->master = zone->zone_options->pattern->request_xfr;
usr.sbin/nsd/xfrd.c
1248
zone->master_num = 0;
usr.sbin/nsd/xfrd.c
1249
zone->round_num++;
usr.sbin/nsd/xfrd.c
1251
if(zone->round_num >= XFRD_MAX_ROUNDS) {
usr.sbin/nsd/xfrd.c
1253
zone->round_num = -1;
usr.sbin/nsd/xfrd.c
1254
xfrd_set_timer_retry(zone);
usr.sbin/nsd/xfrd.c
1257
zone->apex_str, zone->round_num, zone->master_num, zone->next_master));
usr.sbin/nsd/xfrd.c
1258
zone->multi_master_first_master = -1;
usr.sbin/nsd/xfrd.c
1264
if(zone->zone_options->pattern->multi_primary_check) {
usr.sbin/nsd/xfrd.c
1265
if(zone->multi_master_first_master == zone->master_num &&
usr.sbin/nsd/xfrd.c
1266
zone->round_num > 0 &&
usr.sbin/nsd/xfrd.c
1267
zone->state != xfrd_zone_expired) {
usr.sbin/nsd/xfrd.c
1269
if(zone->multi_master_update_check >= 0) {
usr.sbin/nsd/xfrd.c
1272
zone->apex_str));
usr.sbin/nsd/xfrd.c
1274
zone->round_num = -1; /* next try start anew */
usr.sbin/nsd/xfrd.c
1275
zone->multi_master_first_master = -1;
usr.sbin/nsd/xfrd.c
1276
xfrd_set_timer_refresh(zone);
usr.sbin/nsd/xfrd.c
1279
if(zone->multi_master_first_master < 0) {
usr.sbin/nsd/xfrd.c
1280
zone->multi_master_first_master = zone->master_num;
usr.sbin/nsd/xfrd.c
1281
zone->multi_master_update_check = -1;
usr.sbin/nsd/xfrd.c
1286
if (zone->master->ixfr_disabled &&
usr.sbin/nsd/xfrd.c
1287
(zone->master->ixfr_disabled + XFRD_NO_IXFR_CACHE) <= time(NULL)) {
usr.sbin/nsd/xfrd.c
1291
zone->master->ip_address_spec, zone->master_num));
usr.sbin/nsd/xfrd.c
1292
zone->master->ixfr_disabled = 0;
usr.sbin/nsd/xfrd.c
1296
zone->apex_str, zone->round_num, zone->master_num, zone->next_master));
usr.sbin/nsd/xfrd.c
1298
if (!zone->master->use_axfr_only && zone->soa_disk_acquired > 0 &&
usr.sbin/nsd/xfrd.c
1299
!zone->master->ixfr_disabled) {
usr.sbin/nsd/xfrd.c
1301
if (zone->master->allow_udp) {
usr.sbin/nsd/xfrd.c
1302
xfrd_set_timer(zone, XFRD_UDP_TIMEOUT);
usr.sbin/nsd/xfrd.c
1303
xfrd_udp_obtain(zone);
usr.sbin/nsd/xfrd.c
1306
xfrd_set_timer(zone, xfrd->tcp_set->tcp_timeout);
usr.sbin/nsd/xfrd.c
1307
xfrd_tcp_obtain(xfrd->tcp_set, zone);
usr.sbin/nsd/xfrd.c
1310
else if (zone->master->use_axfr_only || zone->soa_disk_acquired <= 0) {
usr.sbin/nsd/xfrd.c
1311
xfrd_set_timer(zone, xfrd->tcp_set->tcp_timeout);
usr.sbin/nsd/xfrd.c
1312
xfrd_tcp_obtain(xfrd->tcp_set, zone);
usr.sbin/nsd/xfrd.c
1314
else if (zone->master->ixfr_disabled) {
usr.sbin/nsd/xfrd.c
1315
if (zone->zone_options->pattern->allow_axfr_fallback) {
usr.sbin/nsd/xfrd.c
1316
xfrd_set_timer(zone, xfrd->tcp_set->tcp_timeout);
usr.sbin/nsd/xfrd.c
1317
xfrd_tcp_obtain(xfrd->tcp_set, zone);
usr.sbin/nsd/xfrd.c
1321
zone->apex_str, zone->master->ip_address_spec));
usr.sbin/nsd/xfrd.c
1327
xfrd_udp_obtain(xfrd_zone_type* zone)
usr.sbin/nsd/xfrd.c
1329
assert(zone->udp_waiting == 0);
usr.sbin/nsd/xfrd.c
1330
if(zone->tcp_conn != -1) {
usr.sbin/nsd/xfrd.c
1332
xfrd_tcp_release(xfrd->tcp_set, zone);
usr.sbin/nsd/xfrd.c
1337
fd = xfrd_send_ixfr_request_udp(zone);
usr.sbin/nsd/xfrd.c
1341
if(zone->event_added)
usr.sbin/nsd/xfrd.c
1342
event_del(&zone->zone_handler);
usr.sbin/nsd/xfrd.c
1343
memset(&zone->zone_handler, 0,
usr.sbin/nsd/xfrd.c
1344
sizeof(zone->zone_handler));
usr.sbin/nsd/xfrd.c
1345
event_set(&zone->zone_handler, fd,
usr.sbin/nsd/xfrd.c
1347
xfrd_handle_zone, zone);
usr.sbin/nsd/xfrd.c
1348
if(event_base_set(xfrd->event_base, &zone->zone_handler) != 0)
usr.sbin/nsd/xfrd.c
1350
if(event_add(&zone->zone_handler, &zone->timeout) != 0)
usr.sbin/nsd/xfrd.c
1352
zone->zone_handler_flags=EV_PERSIST|EV_READ|EV_TIMEOUT;
usr.sbin/nsd/xfrd.c
1353
zone->event_added = 1;
usr.sbin/nsd/xfrd.c
1358
zone->udp_waiting = 1;
usr.sbin/nsd/xfrd.c
1359
zone->udp_waiting_next = NULL;
usr.sbin/nsd/xfrd.c
1360
zone->udp_waiting_prev = xfrd->udp_waiting_last;
usr.sbin/nsd/xfrd.c
1362
xfrd->udp_waiting_first = zone;
usr.sbin/nsd/xfrd.c
1364
xfrd->udp_waiting_last->udp_waiting_next = zone;
usr.sbin/nsd/xfrd.c
1365
xfrd->udp_waiting_last = zone;
usr.sbin/nsd/xfrd.c
1366
xfrd_unset_timer(zone);
usr.sbin/nsd/xfrd.c
1421
xfrd_set_zone_state(xfrd_zone_type* zone, enum xfrd_zone_state s)
usr.sbin/nsd/xfrd.c
1423
if(s != zone->state) {
usr.sbin/nsd/xfrd.c
1424
enum xfrd_zone_state old = zone->state;
usr.sbin/nsd/xfrd.c
1425
zone->state = s;
usr.sbin/nsd/xfrd.c
1428
xfrd_send_expire_notification(zone);
usr.sbin/nsd/xfrd.c
1434
xfrd_set_refresh_now(xfrd_zone_type* zone)
usr.sbin/nsd/xfrd.c
1437
zone->apex_str, zone->state));
usr.sbin/nsd/xfrd.c
1438
if(!zone->is_activated) {
usr.sbin/nsd/xfrd.c
1440
zone->activated_prev = 0;
usr.sbin/nsd/xfrd.c
1441
zone->activated_next = xfrd->activated_first;
usr.sbin/nsd/xfrd.c
1443
xfrd->activated_first->activated_prev = zone;
usr.sbin/nsd/xfrd.c
1444
xfrd->activated_first = zone;
usr.sbin/nsd/xfrd.c
1445
zone->is_activated = 1;
usr.sbin/nsd/xfrd.c
1450
xfrd_unset_timer(xfrd_zone_type* zone)
usr.sbin/nsd/xfrd.c
1452
assert(zone->zone_handler.ev_fd == -1);
usr.sbin/nsd/xfrd.c
1453
if(zone->event_added)
usr.sbin/nsd/xfrd.c
1454
event_del(&zone->zone_handler);
usr.sbin/nsd/xfrd.c
1455
zone->zone_handler_flags = 0;
usr.sbin/nsd/xfrd.c
1456
zone->event_added = 0;
usr.sbin/nsd/xfrd.c
1460
xfrd_set_timer(xfrd_zone_type* zone, time_t t)
usr.sbin/nsd/xfrd.c
1462
int fd = zone->zone_handler.ev_fd;
usr.sbin/nsd/xfrd.c
1463
int fl = ((fd == -1)?EV_TIMEOUT:zone->zone_handler_flags);
usr.sbin/nsd/xfrd.c
1475
if(zone->event_added)
usr.sbin/nsd/xfrd.c
1476
event_del(&zone->zone_handler);
usr.sbin/nsd/xfrd.c
1478
zone->timeout.tv_sec = t;
usr.sbin/nsd/xfrd.c
1479
zone->timeout.tv_usec = 0;
usr.sbin/nsd/xfrd.c
1480
memset(&zone->zone_handler, 0, sizeof(zone->zone_handler));
usr.sbin/nsd/xfrd.c
1481
event_set(&zone->zone_handler, fd, fl, xfrd_handle_zone, zone);
usr.sbin/nsd/xfrd.c
1482
if(event_base_set(xfrd->event_base, &zone->zone_handler) != 0)
usr.sbin/nsd/xfrd.c
1484
if(event_add(&zone->zone_handler, &zone->timeout) != 0)
usr.sbin/nsd/xfrd.c
1486
zone->zone_handler_flags = fl;
usr.sbin/nsd/xfrd.c
1487
zone->event_added = 1;
usr.sbin/nsd/xfrd.c
1491
xfrd_handle_incoming_soa(xfrd_zone_type* zone,
usr.sbin/nsd/xfrd.c
1497
zone->soa_nsd_acquired = 0;
usr.sbin/nsd/xfrd.c
1498
zone->soa_disk_acquired = 0;
usr.sbin/nsd/xfrd.c
1499
xfrd_set_zone_state(zone, xfrd_zone_refreshing);
usr.sbin/nsd/xfrd.c
1500
xfrd_set_refresh_now(zone);
usr.sbin/nsd/xfrd.c
1503
if(zone->soa_nsd_acquired && soa->serial == zone->soa_nsd.serial)
usr.sbin/nsd/xfrd.c
1506
if(zone->soa_disk_acquired) {
usr.sbin/nsd/xfrd.c
1507
int cmp = compare_serial(ntohl(soa->serial), ntohl(zone->soa_disk.serial));
usr.sbin/nsd/xfrd.c
1520
acquired = zone->soa_disk_acquired;
usr.sbin/nsd/xfrd.c
1527
soa_nsd_serial = ntohl(zone->soa_nsd.serial);
usr.sbin/nsd/xfrd.c
1530
zone->apex_str, soa_nsd_serial, soa_serial);
usr.sbin/nsd/xfrd.c
1533
zone->apex_str, soa_serial);
usr.sbin/nsd/xfrd.c
1535
zone->soa_nsd = *soa;
usr.sbin/nsd/xfrd.c
1536
zone->soa_nsd_acquired = acquired;
usr.sbin/nsd/xfrd.c
1539
xfrd_time() > zone->soa_disk_acquired
usr.sbin/nsd/xfrd.c
1540
? xfrd_time() - zone->soa_disk_acquired : 0;
usr.sbin/nsd/xfrd.c
1542
if(seconds_since_acquired < bound_soa_disk_refresh(zone))
usr.sbin/nsd/xfrd.c
1544
xfrd_set_zone_state(zone, xfrd_zone_ok);
usr.sbin/nsd/xfrd.c
1551
zone->fresh_xfr_timeout = 0;
usr.sbin/nsd/xfrd.c
1552
if(seconds_since_acquired < bound_soa_disk_refresh(zone))
usr.sbin/nsd/xfrd.c
1555
zone->round_num = -1;
usr.sbin/nsd/xfrd.c
1556
xfrd_set_timer_refresh(zone);
usr.sbin/nsd/xfrd.c
1557
} else if(seconds_since_acquired < bound_soa_disk_expire(zone))
usr.sbin/nsd/xfrd.c
1560
xfrd_set_zone_state(zone, xfrd_zone_refreshing);
usr.sbin/nsd/xfrd.c
1561
xfrd_set_refresh_now(zone);
usr.sbin/nsd/xfrd.c
1563
if(seconds_since_acquired >= bound_soa_disk_expire(zone))
usr.sbin/nsd/xfrd.c
1566
xfrd_set_zone_state(zone, xfrd_zone_expired);
usr.sbin/nsd/xfrd.c
1567
xfrd_set_refresh_now(zone);
usr.sbin/nsd/xfrd.c
1570
if(zone->soa_notified_acquired != 0 &&
usr.sbin/nsd/xfrd.c
1571
(zone->soa_notified.serial == 0 ||
usr.sbin/nsd/xfrd.c
1572
compare_serial(ntohl(zone->soa_disk.serial),
usr.sbin/nsd/xfrd.c
1573
ntohl(zone->soa_notified.serial)) >= 0))
usr.sbin/nsd/xfrd.c
1575
zone->soa_notified_acquired = 0;
usr.sbin/nsd/xfrd.c
1577
if(zone->soa_notified_acquired && zone->state == xfrd_zone_ok)
usr.sbin/nsd/xfrd.c
1580
xfrd_set_zone_state(zone, xfrd_zone_refreshing);
usr.sbin/nsd/xfrd.c
1581
xfrd_set_refresh_now(zone);
usr.sbin/nsd/xfrd.c
1584
xfrd_send_notify(xfrd->notify_zones, zone->apex, &zone->soa_nsd);
usr.sbin/nsd/xfrd.c
1593
zone->apex_str, (unsigned)ntohl(soa->serial)));
usr.sbin/nsd/xfrd.c
1594
zone->soa_nsd = *soa;
usr.sbin/nsd/xfrd.c
1595
zone->soa_disk = *soa;
usr.sbin/nsd/xfrd.c
1596
zone->soa_nsd_acquired = acquired;
usr.sbin/nsd/xfrd.c
1597
zone->soa_disk_acquired = acquired;
usr.sbin/nsd/xfrd.c
1598
if(zone->soa_notified_acquired != 0 &&
usr.sbin/nsd/xfrd.c
1599
(zone->soa_notified.serial == 0 ||
usr.sbin/nsd/xfrd.c
1600
compare_serial(ntohl(zone->soa_disk.serial),
usr.sbin/nsd/xfrd.c
1601
ntohl(zone->soa_notified.serial)) >= 0))
usr.sbin/nsd/xfrd.c
1603
zone->soa_notified_acquired = 0;
usr.sbin/nsd/xfrd.c
1605
xfrd_set_zone_state(zone, xfrd_zone_refreshing);
usr.sbin/nsd/xfrd.c
1606
xfrd_set_refresh_now(zone);
usr.sbin/nsd/xfrd.c
1607
xfrd_send_notify(xfrd->notify_zones, zone->apex, &zone->soa_nsd);
usr.sbin/nsd/xfrd.c
1611
xfrd_send_expire_notification(xfrd_zone_type* zone)
usr.sbin/nsd/xfrd.c
1614
zone->apex, zone->state == xfrd_zone_expired);
usr.sbin/nsd/xfrd.c
1641
xfrd_udp_release(xfrd_zone_type* zone)
usr.sbin/nsd/xfrd.c
1643
assert(zone->udp_waiting == 0);
usr.sbin/nsd/xfrd.c
1644
if(zone->event_added)
usr.sbin/nsd/xfrd.c
1645
event_del(&zone->zone_handler);
usr.sbin/nsd/xfrd.c
1646
if(zone->zone_handler.ev_fd != -1) {
usr.sbin/nsd/xfrd.c
1647
close(zone->zone_handler.ev_fd);
usr.sbin/nsd/xfrd.c
1649
zone->zone_handler.ev_fd = -1;
usr.sbin/nsd/xfrd.c
1650
zone->zone_handler_flags = 0;
usr.sbin/nsd/xfrd.c
1651
zone->event_added = 0;
usr.sbin/nsd/xfrd.c
1699
xfrd_disable_ixfr(xfrd_zone_type* zone)
usr.sbin/nsd/xfrd.c
1701
if(!(zone->master->ixfr_disabled &&
usr.sbin/nsd/xfrd.c
1702
(zone->master->ixfr_disabled + XFRD_NO_IXFR_CACHE) <= time(NULL))) {
usr.sbin/nsd/xfrd.c
1704
zone->round_num = 0;
usr.sbin/nsd/xfrd.c
1705
zone->next_master = zone->master_num;
usr.sbin/nsd/xfrd.c
1707
zone->master->ixfr_disabled = time(NULL);
usr.sbin/nsd/xfrd.c
1711
xfrd_udp_read(xfrd_zone_type* zone)
usr.sbin/nsd/xfrd.c
1713
DEBUG(DEBUG_XFRD,1, (LOG_INFO, "xfrd: zone %s read udp data", zone->apex_str));
usr.sbin/nsd/xfrd.c
1714
if(!xfrd_udp_read_packet(xfrd->packet, zone->zone_handler.ev_fd,
usr.sbin/nsd/xfrd.c
1716
zone->master->bad_xfr_count++;
usr.sbin/nsd/xfrd.c
1717
if (zone->master->bad_xfr_count > 2) {
usr.sbin/nsd/xfrd.c
1718
xfrd_disable_ixfr(zone);
usr.sbin/nsd/xfrd.c
1719
zone->master->bad_xfr_count = 0;
usr.sbin/nsd/xfrd.c
1722
xfrd_udp_release(zone);
usr.sbin/nsd/xfrd.c
1724
xfrd_make_request(zone);
usr.sbin/nsd/xfrd.c
1727
switch(xfrd_handle_received_xfr_packet(zone, xfrd->packet)) {
usr.sbin/nsd/xfrd.c
1729
xfrd_set_timer(zone, xfrd->tcp_set->tcp_timeout);
usr.sbin/nsd/xfrd.c
1730
xfrd_udp_release(zone);
usr.sbin/nsd/xfrd.c
1731
xfrd_tcp_obtain(xfrd->tcp_set, zone);
usr.sbin/nsd/xfrd.c
1734
if(zone->zone_options->pattern->multi_primary_check) {
usr.sbin/nsd/xfrd.c
1735
xfrd_udp_release(zone);
usr.sbin/nsd/xfrd.c
1736
xfrd_make_request(zone);
usr.sbin/nsd/xfrd.c
1742
assert(zone->round_num == -1);
usr.sbin/nsd/xfrd.c
1743
xfrd_udp_release(zone);
usr.sbin/nsd/xfrd.c
1746
xfrd_disable_ixfr(zone);
usr.sbin/nsd/xfrd.c
1748
xfrd_udp_release(zone);
usr.sbin/nsd/xfrd.c
1750
xfrd_make_request(zone);
usr.sbin/nsd/xfrd.c
1755
xfrd_udp_release(zone);
usr.sbin/nsd/xfrd.c
1757
xfrd_make_request(zone);
usr.sbin/nsd/xfrd.c
1761
zone->master->bad_xfr_count++;
usr.sbin/nsd/xfrd.c
1762
if (zone->master->bad_xfr_count > 2) {
usr.sbin/nsd/xfrd.c
1763
xfrd_disable_ixfr(zone);
usr.sbin/nsd/xfrd.c
1764
zone->master->bad_xfr_count = 0;
usr.sbin/nsd/xfrd.c
1767
xfrd_udp_release(zone);
usr.sbin/nsd/xfrd.c
1769
xfrd_make_request(zone);
usr.sbin/nsd/xfrd.c
1932
xfrd_send_ixfr_request_udp(xfrd_zone_type* zone)
usr.sbin/nsd/xfrd.c
1937
assert(zone->master);
usr.sbin/nsd/xfrd.c
1939
if(zone->tcp_conn != -1) {
usr.sbin/nsd/xfrd.c
1942
zone->apex_str);
usr.sbin/nsd/xfrd.c
1945
xfrd_setup_packet(xfrd->packet, TYPE_IXFR, CLASS_IN, zone->apex,
usr.sbin/nsd/xfrd.c
1947
zone->query_id = ID(xfrd->packet);
usr.sbin/nsd/xfrd.c
1948
xfrd_prepare_zone_xfr(zone, TYPE_IXFR);
usr.sbin/nsd/xfrd.c
1949
DEBUG(DEBUG_XFRD,1, (LOG_INFO, "sent query with ID %d", zone->query_id));
usr.sbin/nsd/xfrd.c
1951
xfrd_write_soa_buffer(xfrd->packet, zone->apex, &zone->soa_disk,
usr.sbin/nsd/xfrd.c
1954
if(zone->master->key_options && zone->master->key_options->tsig_key) {
usr.sbin/nsd/xfrd.c
1956
xfrd->packet, &zone->latest_xfr->tsig, zone->master);
usr.sbin/nsd/xfrd.c
1959
xfrd_set_timer(zone, XFRD_UDP_TIMEOUT);
usr.sbin/nsd/xfrd.c
1961
if((fd = xfrd_send_udp(zone->master, xfrd->packet,
usr.sbin/nsd/xfrd.c
1962
zone->zone_options->pattern->outgoing_interface)) == -1)
usr.sbin/nsd/xfrd.c
1967
(unsigned)ntohl(zone->soa_disk.serial),
usr.sbin/nsd/xfrd.c
1968
zone->apex_str, zone->master->ip_address_spec));
usr.sbin/nsd/xfrd.c
2010
xfrd_xfr_check_rrs(xfrd_zone_type* zone, buffer_type* packet, size_t count,
usr.sbin/nsd/xfrd.c
2024
for(i=0; i<count; ++i,++zone->latest_xfr->msg_rr_count)
usr.sbin/nsd/xfrd.c
2028
"trailing garbage", zone->apex_str));
usr.sbin/nsd/xfrd.c
2037
"to parse owner name", zone->apex_str));
usr.sbin/nsd/xfrd.c
2042
"too small", zone->apex_str));
usr.sbin/nsd/xfrd.c
2051
zone->apex_str, dname_to_string(dname,0),
usr.sbin/nsd/xfrd.c
2060
"too small", zone->apex_str));
usr.sbin/nsd/xfrd.c
2069
"to parse rdata %s %s %s", zone->apex_str,
usr.sbin/nsd/xfrd.c
2080
"unable to parse soainfo", zone->apex_str));
usr.sbin/nsd/xfrd.c
2083
if(zone->latest_xfr->msg_rr_count == 1 &&
usr.sbin/nsd/xfrd.c
2084
ntohl(soa->serial) != zone->latest_xfr->msg_new_serial) {
usr.sbin/nsd/xfrd.c
2086
zone->latest_xfr->msg_is_ixfr = 1;
usr.sbin/nsd/xfrd.c
2087
if(!zone->soa_disk_acquired) {
usr.sbin/nsd/xfrd.c
2089
"got ixfr but need axfr", zone->apex_str));
usr.sbin/nsd/xfrd.c
2092
if(ntohl(soa->serial) != ntohl(zone->soa_disk.serial)) {
usr.sbin/nsd/xfrd.c
2094
"bad start serial", zone->apex_str));
usr.sbin/nsd/xfrd.c
2097
zone->latest_xfr->msg_old_serial = ntohl(soa->serial);
usr.sbin/nsd/xfrd.c
2101
else if(ntohl(soa->serial) == zone->latest_xfr->msg_new_serial) {
usr.sbin/nsd/xfrd.c
2103
if(zone->latest_xfr->msg_is_ixfr == 1) {
usr.sbin/nsd/xfrd.c
2104
zone->latest_xfr->msg_is_ixfr = 2; /* seen middle SOA in ixfr */
usr.sbin/nsd/xfrd.c
2110
else if (zone->latest_xfr->msg_is_ixfr) {
usr.sbin/nsd/xfrd.c
2112
if(ntohl(soa->serial) > zone->latest_xfr->msg_new_serial) {
usr.sbin/nsd/xfrd.c
2114
"bad middle serial", zone->apex_str));
usr.sbin/nsd/xfrd.c
2119
"serial decreasing not allowed", zone->apex_str));
usr.sbin/nsd/xfrd.c
2126
zone->apex_str, tmp_serial,
usr.sbin/nsd/xfrd.c
2146
zone->apex_str,
usr.sbin/nsd/xfrd.c
2156
"trailing data %d bytes", zone->apex_str,
usr.sbin/nsd/xfrd.c
2165
xfrd_xfr_process_tsig(xfrd_zone_type* zone, buffer_type* packet)
usr.sbin/nsd/xfrd.c
2168
assert(zone && zone->master && zone->master->key_options
usr.sbin/nsd/xfrd.c
2169
&& zone->master->key_options->tsig_key && packet);
usr.sbin/nsd/xfrd.c
2170
if(!tsig_find_rr(&zone->latest_xfr->tsig, packet)) {
usr.sbin/nsd/xfrd.c
2172
zone->apex_str, zone->master->ip_address_spec);
usr.sbin/nsd/xfrd.c
2175
if(zone->latest_xfr->tsig.status == TSIG_OK) {
usr.sbin/nsd/xfrd.c
2177
if (zone->latest_xfr->tsig.error_code != TSIG_ERROR_NOERROR) {
usr.sbin/nsd/xfrd.c
2179
"(%s)", zone->apex_str,
usr.sbin/nsd/xfrd.c
2180
zone->master->ip_address_spec,
usr.sbin/nsd/xfrd.c
2181
tsig_error(zone->latest_xfr->tsig.error_code));
usr.sbin/nsd/xfrd.c
2186
buffer_set_limit(packet, zone->latest_xfr->tsig.position);
usr.sbin/nsd/xfrd.c
2191
tsig_update(&zone->latest_xfr->tsig, packet, buffer_limit(packet));
usr.sbin/nsd/xfrd.c
2193
if (!tsig_verify(&zone->latest_xfr->tsig)) {
usr.sbin/nsd/xfrd.c
2195
zone->apex_str, zone->master->ip_address_spec);
usr.sbin/nsd/xfrd.c
2199
zone->apex_str, zone->master->ip_address_spec));
usr.sbin/nsd/xfrd.c
2201
tsig_prepare(&zone->latest_xfr->tsig);
usr.sbin/nsd/xfrd.c
2203
else if(zone->latest_xfr->tsig.updates_since_last_prepare > XFRD_TSIG_MAX_UNSIGNED) {
usr.sbin/nsd/xfrd.c
2206
"packets without TSIG", zone->apex_str,
usr.sbin/nsd/xfrd.c
2207
zone->master->ip_address_spec);
usr.sbin/nsd/xfrd.c
2211
if(!have_tsig && zone->latest_xfr->msg_seq_nr == 0) {
usr.sbin/nsd/xfrd.c
2213
zone->apex_str, zone->master->ip_address_spec);
usr.sbin/nsd/xfrd.c
2221
xfrd_parse_received_xfr_packet(xfrd_zone_type* zone, buffer_type* packet,
usr.sbin/nsd/xfrd.c
2230
assert(zone->master);
usr.sbin/nsd/xfrd.c
2242
"got query with ID %d and %d needed", ID(packet), zone->query_id));
usr.sbin/nsd/xfrd.c
2243
if(ID(packet) != zone->query_id) {
usr.sbin/nsd/xfrd.c
2246
zone->apex_str, zone->master->ip_address_spec);
usr.sbin/nsd/xfrd.c
2254
!zone->master->ixfr_disabled &&
usr.sbin/nsd/xfrd.c
2255
!zone->master->use_axfr_only)) {
usr.sbin/nsd/xfrd.c
2258
zone->apex_str, rcode2str(RCODE(packet)),
usr.sbin/nsd/xfrd.c
2259
zone->master->ip_address_spec);
usr.sbin/nsd/xfrd.c
2271
if(zone->master->key_options) {
usr.sbin/nsd/xfrd.c
2272
if(!xfrd_xfr_process_tsig(zone, packet)) {
usr.sbin/nsd/xfrd.c
2295
zone->apex_str, zone->master->ip_address_spec);
usr.sbin/nsd/xfrd.c
2299
if(zone->latest_xfr->msg_rr_count == 0 && ancount == 0) {
usr.sbin/nsd/xfrd.c
2300
if(zone->tcp_conn == -1 && TC(packet)) {
usr.sbin/nsd/xfrd.c
2311
zone->apex_str, zone->master->ip_address_spec));
usr.sbin/nsd/xfrd.c
2321
if(zone->latest_xfr->msg_rr_count == 0) {
usr.sbin/nsd/xfrd.c
2327
zone->apex_str, zone->master->ip_address_spec));
usr.sbin/nsd/xfrd.c
2331
if(dname_compare(soaname, zone->apex) != 0) { /* wrong name */
usr.sbin/nsd/xfrd.c
2334
zone->apex_str, zone->master->ip_address_spec));
usr.sbin/nsd/xfrd.c
2344
zone->apex_str, zone->master->ip_address_spec));
usr.sbin/nsd/xfrd.c
2348
if(zone->soa_disk_acquired != 0 &&
usr.sbin/nsd/xfrd.c
2349
zone->state != xfrd_zone_expired /* if expired - accept anything */ &&
usr.sbin/nsd/xfrd.c
2350
compare_serial(ntohl(soa->serial), ntohl(zone->soa_disk.serial)) < 0) {
usr.sbin/nsd/xfrd.c
2353
zone->apex_str, ntohl(zone->soa_disk.serial), ntohl(soa->serial), zone->master->ip_address_spec));
usr.sbin/nsd/xfrd.c
2356
zone->apex_str, ntohl(zone->soa_disk.serial), ntohl(soa->serial), zone->master->ip_address_spec));
usr.sbin/nsd/xfrd.c
2360
if(zone->soa_disk_acquired != 0 && zone->soa_disk.serial == soa->serial) {
usr.sbin/nsd/xfrd.c
2364
zone->apex_str));
usr.sbin/nsd/xfrd.c
2366
zone->soa_disk_acquired = xfrd_time();
usr.sbin/nsd/xfrd.c
2367
if(zone->soa_nsd.serial == soa->serial)
usr.sbin/nsd/xfrd.c
2368
zone->soa_nsd_acquired = xfrd_time();
usr.sbin/nsd/xfrd.c
2369
xfrd_set_zone_state(zone, xfrd_zone_ok);
usr.sbin/nsd/xfrd.c
2371
zone->apex_str));
usr.sbin/nsd/xfrd.c
2372
if(zone->zone_options->pattern->multi_primary_check) {
usr.sbin/nsd/xfrd.c
2376
if(zone->soa_notified_acquired == 0) {
usr.sbin/nsd/xfrd.c
2378
zone->round_num = -1; /* next try start a new round */
usr.sbin/nsd/xfrd.c
2379
xfrd_set_timer_refresh(zone);
usr.sbin/nsd/xfrd.c
2388
%u, reply %u).", (unsigned)zone->soa_disk_acquired ? ntohl(zone->soa_disk.serial) : 0, (unsigned)ntohl(soa->serial)));
usr.sbin/nsd/xfrd.c
2392
(void)xfrd_handle_incoming_notify(zone, soa);
usr.sbin/nsd/xfrd.c
2394
else if(zone->soa_notified_acquired && zone->soa_notified.serial &&
usr.sbin/nsd/xfrd.c
2395
compare_serial(ntohl(zone->soa_notified.serial), ntohl(soa->serial)) < 0) {
usr.sbin/nsd/xfrd.c
2397
zone->soa_notified.serial = soa->serial;
usr.sbin/nsd/xfrd.c
2399
zone->latest_xfr->msg_new_serial = ntohl(soa->serial);
usr.sbin/nsd/xfrd.c
2400
zone->latest_xfr->msg_rr_count = 1;
usr.sbin/nsd/xfrd.c
2401
zone->latest_xfr->msg_is_ixfr = 0;
usr.sbin/nsd/xfrd.c
2402
if(zone->soa_disk_acquired)
usr.sbin/nsd/xfrd.c
2403
zone->latest_xfr->msg_old_serial = ntohl(zone->soa_disk.serial);
usr.sbin/nsd/xfrd.c
2404
else zone->latest_xfr->msg_old_serial = 0;
usr.sbin/nsd/xfrd.c
2408
if(zone->tcp_conn == -1 && TC(packet)) {
usr.sbin/nsd/xfrd.c
2411
zone->apex_str, zone->master->ip_address_spec));
usr.sbin/nsd/xfrd.c
2416
if(zone->tcp_conn == -1 && ancount < 2) {
usr.sbin/nsd/xfrd.c
2426
if(!xfrd_xfr_check_rrs(zone, packet, ancount_todo, &done, soa,
usr.sbin/nsd/xfrd.c
2430
"reply.", zone->apex_str));
usr.sbin/nsd/xfrd.c
2435
if(zone->tcp_conn == -1 && done == 0) {
usr.sbin/nsd/xfrd.c
2441
if(zone->master->key_options) {
usr.sbin/nsd/xfrd.c
2442
if(zone->latest_xfr->tsig.updates_since_last_prepare != 0) {
usr.sbin/nsd/xfrd.c
2462
xfrd_free_zone_xfr(xfrd_zone_type *zone, xfrd_xfr_type *xfr)
usr.sbin/nsd/xfrd.c
2464
if(xfr == zone->latest_xfr) {
usr.sbin/nsd/xfrd.c
2466
if((zone->latest_xfr = xfr->prev) != NULL)
usr.sbin/nsd/xfrd.c
2467
zone->latest_xfr->next = NULL;
usr.sbin/nsd/xfrd.c
2479
xfrd_delete_zone_xfr(xfrd_zone_type *zone, xfrd_xfr_type *xfr)
usr.sbin/nsd/xfrd.c
2484
xfrd_free_zone_xfr(zone, xfr);
usr.sbin/nsd/xfrd.c
2488
xfrd_prepare_zone_xfr(xfrd_zone_type *zone, uint16_t query_type)
usr.sbin/nsd/xfrd.c
2493
if(zone->latest_xfr != NULL && !zone->latest_xfr->acquired) {
usr.sbin/nsd/xfrd.c
2494
xfrd_delete_zone_xfr(zone, zone->latest_xfr);
usr.sbin/nsd/xfrd.c
2498
if((xfr->prev = zone->latest_xfr) != NULL) {
usr.sbin/nsd/xfrd.c
2502
zone->latest_xfr = xfr;
usr.sbin/nsd/xfrd.c
2509
xfrd_handle_received_xfr_packet(xfrd_zone_type* zone, buffer_type* packet)
usr.sbin/nsd/xfrd.c
2514
assert(zone->latest_xfr);
usr.sbin/nsd/xfrd.c
2517
switch((res=xfrd_parse_received_xfr_packet(zone, packet, &soa)))
usr.sbin/nsd/xfrd.c
2533
if(zone->latest_xfr->msg_seq_nr > 0) {
usr.sbin/nsd/xfrd.c
2536
xfrd_unlink_xfrfile(xfrd->nsd, zone->latest_xfr->xfrfilenumber);
usr.sbin/nsd/xfrd.c
2539
zone->apex_str, zone->latest_xfr->msg_rr_count?
usr.sbin/nsd/xfrd.c
2540
(int)zone->latest_xfr->msg_new_serial:0,
usr.sbin/nsd/xfrd.c
2541
zone->master->ip_address_spec));
usr.sbin/nsd/xfrd.c
2542
zone->latest_xfr->msg_seq_nr = 0;
usr.sbin/nsd/xfrd.c
2546
zone->apex_str, zone->latest_xfr->msg_rr_count?
usr.sbin/nsd/xfrd.c
2547
(int)zone->latest_xfr->msg_new_serial:0,
usr.sbin/nsd/xfrd.c
2548
zone->master->ip_address_spec));
usr.sbin/nsd/xfrd.c
2551
&& zone->latest_xfr->query_type == TYPE_IXFR)
usr.sbin/nsd/xfrd.c
2561
if(zone->latest_xfr->msg_seq_nr == 0)
usr.sbin/nsd/xfrd.c
2562
zone->latest_xfr->xfrfilenumber = xfrd->xfrfilenumber++;
usr.sbin/nsd/xfrd.c
2563
diff_write_packet(dname_to_string(zone->apex,0),
usr.sbin/nsd/xfrd.c
2564
zone->zone_options->pattern->pname,
usr.sbin/nsd/xfrd.c
2565
zone->latest_xfr->msg_old_serial,
usr.sbin/nsd/xfrd.c
2566
zone->latest_xfr->msg_new_serial,
usr.sbin/nsd/xfrd.c
2567
zone->latest_xfr->msg_seq_nr,
usr.sbin/nsd/xfrd.c
2569
zone->latest_xfr->xfrfilenumber);
usr.sbin/nsd/xfrd.c
2571
if(verbosity < 4 || zone->latest_xfr->msg_seq_nr == 0)
usr.sbin/nsd/xfrd.c
2575
|| (verbosity >= 5 && zone->latest_xfr->msg_seq_nr % 1000 == 0)
usr.sbin/nsd/xfrd.c
2576
|| (verbosity >= 4 && zone->latest_xfr->msg_seq_nr % 10000 == 0)) {
usr.sbin/nsd/xfrd.c
2579
"with serial %u to disk", zone->apex_str,
usr.sbin/nsd/xfrd.c
2580
zone->latest_xfr->msg_seq_nr,
usr.sbin/nsd/xfrd.c
2581
zone->master->ip_address_spec,
usr.sbin/nsd/xfrd.c
2582
(int)zone->latest_xfr->msg_new_serial));
usr.sbin/nsd/xfrd.c
2584
zone->latest_xfr->msg_seq_nr++;
usr.sbin/nsd/xfrd.c
2587
xfrd->nsd, zone->latest_xfr->xfrfilenumber);
usr.sbin/nsd/xfrd.c
2588
if( zone->zone_options->pattern->size_limit_xfr != 0 &&
usr.sbin/nsd/xfrd.c
2589
xfrfile_size > zone->zone_options->pattern->size_limit_xfr ) {
usr.sbin/nsd/xfrd.c
2603
(unsigned)zone->latest_xfr->msg_new_serial, xfrd_pretty_time(xfrd_time()),
usr.sbin/nsd/xfrd.c
2604
zone->master->ip_address_spec);
usr.sbin/nsd/xfrd.c
2605
if(zone->master->key_options) {
usr.sbin/nsd/xfrd.c
2607
zone->master->key_options->name);
usr.sbin/nsd/xfrd.c
2610
if(zone->master->tls_auth_options && zone->master->tls_auth_options->auth_domain_name) {
usr.sbin/nsd/xfrd.c
2612
zone->master->tls_auth_options->auth_domain_name);
usr.sbin/nsd/xfrd.c
2615
if (zone->tcp_conn != -1) {
usr.sbin/nsd/xfrd.c
2627
if (zid->zone == zone) {
usr.sbin/nsd/xfrd.c
2661
diff_write_commit(zone->apex_str, zone->latest_xfr->msg_old_serial,
usr.sbin/nsd/xfrd.c
2662
zone->latest_xfr->msg_new_serial, zone->latest_xfr->msg_seq_nr, 1,
usr.sbin/nsd/xfrd.c
2663
(char*)buffer_begin(packet), xfrd->nsd, zone->latest_xfr->xfrfilenumber);
usr.sbin/nsd/xfrd.c
2665
zone->apex_str, (char*)buffer_begin(packet)));
usr.sbin/nsd/xfrd.c
2671
zone->apex,
usr.sbin/nsd/xfrd.c
2672
zone->latest_xfr->msg_old_serial,
usr.sbin/nsd/xfrd.c
2673
zone->latest_xfr->msg_new_serial,
usr.sbin/nsd/xfrd.c
2674
zone->latest_xfr->xfrfilenumber))
usr.sbin/nsd/xfrd.c
2676
zone->latest_xfr->sent = xfrd->nsd->mytask + 1;
usr.sbin/nsd/xfrd.c
2679
zone->latest_xfr->msg_seq_nr = 0;
usr.sbin/nsd/xfrd.c
2681
zone->soa_disk_acquired = zone->latest_xfr->acquired = xfrd_time();
usr.sbin/nsd/xfrd.c
2682
zone->soa_disk = soa;
usr.sbin/nsd/xfrd.c
2683
if(zone->soa_notified_acquired && (
usr.sbin/nsd/xfrd.c
2684
zone->soa_notified.serial == 0 ||
usr.sbin/nsd/xfrd.c
2685
compare_serial(ntohl(zone->soa_disk.serial),
usr.sbin/nsd/xfrd.c
2686
ntohl(zone->soa_notified.serial)) >= 0))
usr.sbin/nsd/xfrd.c
2688
zone->soa_notified_acquired = 0;
usr.sbin/nsd/xfrd.c
269
xfrd_zone_type* zone;
usr.sbin/nsd/xfrd.c
2690
if(!zone->soa_notified_acquired) {
usr.sbin/nsd/xfrd.c
2697
if(zone->state != xfrd_zone_expired)
usr.sbin/nsd/xfrd.c
2698
xfrd_set_zone_state(zone, xfrd_zone_ok);
usr.sbin/nsd/xfrd.c
270
while((zone = xfrd->activated_first)) {
usr.sbin/nsd/xfrd.c
2701
zone->apex_str));
usr.sbin/nsd/xfrd.c
2702
if(zone->zone_options->pattern->multi_primary_check) {
usr.sbin/nsd/xfrd.c
2703
zone->multi_master_update_check = zone->master_num;
usr.sbin/nsd/xfrd.c
2707
zone->round_num = -1; /* next try start anew */
usr.sbin/nsd/xfrd.c
2708
xfrd_set_timer_refresh(zone);
usr.sbin/nsd/xfrd.c
272
zone->apex_str));
usr.sbin/nsd/xfrd.c
274
xfrd->activated_first = zone->activated_next;
usr.sbin/nsd/xfrd.c
275
if(zone->activated_next)
usr.sbin/nsd/xfrd.c
276
zone->activated_next->activated_prev = NULL;
usr.sbin/nsd/xfrd.c
2766
xfrd_handle_notify_and_start_xfr(xfrd_zone_type* zone, xfrd_soa_type* soa)
usr.sbin/nsd/xfrd.c
2768
if(xfrd_handle_incoming_notify(zone, soa)) {
usr.sbin/nsd/xfrd.c
2769
if(zone->zone_handler.ev_fd == -1 && zone->tcp_conn == -1 &&
usr.sbin/nsd/xfrd.c
277
zone->is_activated = 0;
usr.sbin/nsd/xfrd.c
2770
!zone->tcp_waiting && !zone->udp_waiting) {
usr.sbin/nsd/xfrd.c
2771
xfrd_set_refresh_now(zone);
usr.sbin/nsd/xfrd.c
2776
if(zone->soa_disk_acquired == 0)
usr.sbin/nsd/xfrd.c
2777
zone->fresh_xfr_timeout = XFRD_TRANSFER_TIMEOUT_START;
usr.sbin/nsd/xfrd.c
2795
xfrd_zone_type* zone;
usr.sbin/nsd/xfrd.c
280
xfrd_handle_zone(zone->zone_handler.ev_fd, 0, zone);
usr.sbin/nsd/xfrd.c
2808
zone = (xfrd_zone_type*)rbtree_search(xfrd->zones, dname);
usr.sbin/nsd/xfrd.c
2809
if(!zone) {
usr.sbin/nsd/xfrd.c
2828
xfrd_handle_notify_and_start_xfr(zone, have_soa?&soa:NULL);
usr.sbin/nsd/xfrd.c
2830
if (acl_find_num(zone->zone_options->pattern->request_xfr,
usr.sbin/nsd/xfrd.c
2834
next = find_same_master_notify(zone, acl_num);
usr.sbin/nsd/xfrd.c
2836
zone->next_master = next;
usr.sbin/nsd/xfrd.c
2848
xfrd_handle_incoming_notify(xfrd_zone_type* zone, xfrd_soa_type* soa)
usr.sbin/nsd/xfrd.c
2850
if(soa && zone->soa_disk_acquired && zone->state != xfrd_zone_expired &&
usr.sbin/nsd/xfrd.c
2851
compare_serial(ntohl(soa->serial),ntohl(zone->soa_disk.serial)) <= 0)
usr.sbin/nsd/xfrd.c
2855
"(soa disk serial %u)", zone->apex_str,
usr.sbin/nsd/xfrd.c
2857
(unsigned)ntohl(zone->soa_disk.serial)));
usr.sbin/nsd/xfrd.c
2861
zone->soa_notified.serial = 0;
usr.sbin/nsd/xfrd.c
2863
else if (zone->soa_notified_acquired == 0 ||
usr.sbin/nsd/xfrd.c
2864
zone->soa_notified.serial == 0 ||
usr.sbin/nsd/xfrd.c
2866
ntohl(zone->soa_notified.serial)) > 0)
usr.sbin/nsd/xfrd.c
2868
zone->soa_notified = *soa;
usr.sbin/nsd/xfrd.c
2870
zone->soa_notified_acquired = xfrd_time();
usr.sbin/nsd/xfrd.c
2871
if(zone->state == xfrd_zone_ok) {
usr.sbin/nsd/xfrd.c
2872
xfrd_set_zone_state(zone, xfrd_zone_refreshing);
usr.sbin/nsd/xfrd.c
2876
zone->apex_str));
usr.sbin/nsd/xfrd.c
2881
find_same_master_notify(xfrd_zone_type* zone, int acl_num_nfy)
usr.sbin/nsd/xfrd.c
2883
struct acl_options* nfy_acl = acl_find_num(zone->zone_options->pattern->
usr.sbin/nsd/xfrd.c
2886
struct acl_options* master = zone->zone_options->pattern->request_xfr;
usr.sbin/nsd/xfrd.c
2903
xfrd_zone_type* zone;
usr.sbin/nsd/xfrd.c
2907
RBTREE_FOR(zone, xfrd_zone_type*, xfrd->zones)
usr.sbin/nsd/xfrd.c
2910
if(!zone->latest_xfr)
usr.sbin/nsd/xfrd.c
2912
xfr = zone->latest_xfr;
usr.sbin/nsd/xfrd.c
2920
(zone->soa_nsd_acquired == 0 ||
usr.sbin/nsd/xfrd.c
2921
zone->soa_nsd.serial != htonl(xfr->msg_new_serial)))
usr.sbin/nsd/xfrd.c
2928
zone->apex_str, xfr->msg_new_serial);
usr.sbin/nsd/xfrd.c
2930
if(xfr->acquired == zone->soa_nsd_acquired) {
usr.sbin/nsd/xfrd.c
2934
zone->soa_disk_acquired = 0;
usr.sbin/nsd/xfrd.c
2935
zone->soa_nsd_acquired = 0;
usr.sbin/nsd/xfrd.c
2938
zone->soa_disk_acquired = zone->soa_nsd_acquired;
usr.sbin/nsd/xfrd.c
2939
zone->soa_disk = zone->soa_nsd;
usr.sbin/nsd/xfrd.c
2945
xfrd_handle_incoming_notify(zone, &soa);
usr.sbin/nsd/xfrd.c
2946
xfrd_set_timer_refresh(zone);
usr.sbin/nsd/xfrd.c
2948
for(xfr = zone->latest_xfr; xfr; xfr = prev_xfr) {
usr.sbin/nsd/xfrd.c
2956
zone->apex_str,
usr.sbin/nsd/xfrd.c
2958
xfrd_delete_zone_xfr(zone, xfr);
usr.sbin/nsd/xfrd.c
2967
xfrd_zone_type* zone;
usr.sbin/nsd/xfrd.c
2973
RBTREE_FOR(zone, xfrd_zone_type*, xfrd->zones)
usr.sbin/nsd/xfrd.c
2975
xfr = zone->latest_xfr;
usr.sbin/nsd/xfrd.c
2993
zone->apex,
usr.sbin/nsd/xfrd.c
369
xfrd_zone_type* zone;
usr.sbin/nsd/xfrd.c
393
RBTREE_FOR(zone, xfrd_zone_type*, xfrd->zones)
usr.sbin/nsd/xfrd.c
395
if(zone->event_added) {
usr.sbin/nsd/xfrd.c
396
event_del(&zone->zone_handler);
usr.sbin/nsd/xfrd.c
397
if(zone->zone_handler.ev_fd != -1) {
usr.sbin/nsd/xfrd.c
398
close(zone->zone_handler.ev_fd);
usr.sbin/nsd/xfrd.c
399
zone->zone_handler.ev_fd = -1;
usr.sbin/nsd/xfrd.c
401
zone->event_added = 0;
usr.sbin/nsd/xfrd.c
426
RBTREE_FOR(zone, xfrd_zone_type*, xfrd->zones)
usr.sbin/nsd/xfrd.c
429
for(xfr = zone->latest_xfr; xfr != NULL; xfr = xfr->prev) {
usr.sbin/nsd/xfrd.c
700
xfrd_zone_type* zone;
usr.sbin/nsd/xfrd.c
713
zone = (xfrd_zone_type*)rbtree_search(xfrd->zones, task->zname);
usr.sbin/nsd/xfrd.c
76
static int xfrd_handle_incoming_notify(xfrd_zone_type* zone,
usr.sbin/nsd/xfrd.c
763
if(zone)
usr.sbin/nsd/xfrd.c
82
static void xfrd_set_zone_state(xfrd_zone_type* zone,
usr.sbin/nsd/xfrd.c
832
for(xfr = zone->latest_xfr; xfr; xfr = prev_xfr) {
usr.sbin/nsd/xfrd.c
85
static void xfrd_set_timer_retry(xfrd_zone_type* zone);
usr.sbin/nsd/xfrd.c
858
zone->apex_str,
usr.sbin/nsd/xfrd.c
861
zone->apex_str, DIFF_VERIFIED,
usr.sbin/nsd/xfrd.c
87
static void xfrd_set_timer_refresh(xfrd_zone_type* zone);
usr.sbin/nsd/xfrd.c
873
zone->apex_str,
usr.sbin/nsd/xfrd.c
875
xfrd_delete_zone_xfr(zone, xfr);
usr.sbin/nsd/xfrd.c
882
zone->soa_disk_acquired = zone->soa_nsd_acquired;
usr.sbin/nsd/xfrd.c
883
zone->soa_disk = zone->soa_nsd;
usr.sbin/nsd/xfrd.c
885
if(xfrd_time() - zone->soa_disk_acquired
usr.sbin/nsd/xfrd.c
886
>= (time_t)ntohl(zone->soa_disk.expire))
usr.sbin/nsd/xfrd.c
889
xfrd_set_zone_state(zone, xfrd_zone_expired);
usr.sbin/nsd/xfrd.c
895
xfrd_set_timer_retry(zone);
usr.sbin/nsd/xfrd.c
897
if(zone->soa_notified_acquired != 0 &&
usr.sbin/nsd/xfrd.c
898
(zone->soa_notified.serial == 0 ||
usr.sbin/nsd/xfrd.c
899
compare_serial(ntohl(zone->soa_disk.serial),
usr.sbin/nsd/xfrd.c
900
ntohl(zone->soa_notified.serial)) >= 0))
usr.sbin/nsd/xfrd.c
902
zone->soa_notified_acquired = 0;
usr.sbin/nsd/xfrd.c
904
if(zone->soa_notified_acquired && zone->state == xfrd_zone_ok)
usr.sbin/nsd/xfrd.c
907
xfrd_set_zone_state(zone, xfrd_zone_refreshing);
usr.sbin/nsd/xfrd.c
908
xfrd_set_refresh_now(zone);
usr.sbin/nsd/xfrd.c
916
xfrd_handle_incoming_soa(zone, soa_ptr, acquired);
usr.sbin/nsd/xfrd.c
927
xfrd_zone_type* zone;
usr.sbin/nsd/xfrd.c
932
RBTREE_FOR(zone, xfrd_zone_type*, xfrd->zones) {
usr.sbin/nsd/xfrd.c
933
if(zone->state == xfrd_zone_expired) {
usr.sbin/nsd/xfrd.c
934
task_new_expire(xtask, &last_task, zone->apex, 1);
usr.sbin/nsd/xfrd.c
97
static int xfrd_send_ixfr_request_udp(xfrd_zone_type* zone);
usr.sbin/nsd/xfrd.c
99
static void xfrd_udp_obtain(xfrd_zone_type* zone);
usr.sbin/nsd/xfrd.c
992
RBTREE_FOR(zone, xfrd_zone_type*, xfrd->zones) {
usr.sbin/nsd/xfrd.c
993
if(zone->state == xfrd_zone_expired) {
usr.sbin/nsd/xfrd.c
994
xfrd_send_expire_notification(zone);
usr.sbin/nsd/xfrd.h
282
within_refresh_bounds(xfrd_zone_type* zone, time_t refresh)
usr.sbin/nsd/xfrd.h
284
return (time_t)zone->zone_options->pattern->max_refresh_time < refresh
usr.sbin/nsd/xfrd.h
285
? (time_t)zone->zone_options->pattern->max_refresh_time
usr.sbin/nsd/xfrd.h
286
: (time_t)zone->zone_options->pattern->min_refresh_time > refresh
usr.sbin/nsd/xfrd.h
287
? (time_t)zone->zone_options->pattern->min_refresh_time
usr.sbin/nsd/xfrd.h
297
bound_soa_disk_refresh(xfrd_zone_type* zone)
usr.sbin/nsd/xfrd.h
299
return within_refresh_bounds(zone, ntohl(zone->soa_disk.refresh));
usr.sbin/nsd/xfrd.h
307
within_retry_bounds(xfrd_zone_type* zone, time_t retry)
usr.sbin/nsd/xfrd.h
309
return (time_t)zone->zone_options->pattern->max_retry_time < retry
usr.sbin/nsd/xfrd.h
310
? (time_t)zone->zone_options->pattern->max_retry_time
usr.sbin/nsd/xfrd.h
311
: (time_t)zone->zone_options->pattern->min_retry_time > retry
usr.sbin/nsd/xfrd.h
312
? (time_t)zone->zone_options->pattern->min_retry_time
usr.sbin/nsd/xfrd.h
322
bound_soa_disk_retry(xfrd_zone_type* zone)
usr.sbin/nsd/xfrd.h
324
return within_retry_bounds(zone, ntohl(zone->soa_disk.retry));
usr.sbin/nsd/xfrd.h
332
within_expire_bounds(xfrd_zone_type* zone, time_t expire)
usr.sbin/nsd/xfrd.h
334
switch (zone->zone_options->pattern->min_expire_time_expr) {
usr.sbin/nsd/xfrd.h
336
return (time_t)zone->zone_options->pattern->min_expire_time > expire
usr.sbin/nsd/xfrd.h
337
? (time_t)zone->zone_options->pattern->min_expire_time : expire;
usr.sbin/nsd/xfrd.h
340
return bound_soa_disk_refresh(zone) + bound_soa_disk_retry(zone) + 1 > expire
usr.sbin/nsd/xfrd.h
341
? bound_soa_disk_refresh(zone) + bound_soa_disk_retry(zone) + 1 : expire;
usr.sbin/nsd/xfrd.h
349
bound_soa_disk_expire(xfrd_zone_type* zone)
usr.sbin/nsd/xfrd.h
351
return within_expire_bounds(zone, ntohl(zone->soa_disk.expire));
usr.sbin/nsd/xfrd.h
356
bound_soa_nsd_expire(xfrd_zone_type* zone)
usr.sbin/nsd/xfrd.h
358
return within_expire_bounds(zone, ntohl(zone->soa_nsd.expire));
usr.sbin/nsd/xfrd.h
374
void xfrd_disable_ixfr(xfrd_zone_type* zone);
usr.sbin/nsd/xfrd.h
384
xfrd_zone_type* zone, buffer_type* packet);
usr.sbin/nsd/xfrd.h
387
void xfrd_set_timer(xfrd_zone_type* zone, time_t t);
usr.sbin/nsd/xfrd.h
389
void xfrd_set_refresh_now(xfrd_zone_type* zone);
usr.sbin/nsd/xfrd.h
391
void xfrd_unset_timer(xfrd_zone_type* zone);
usr.sbin/nsd/xfrd.h
402
void xfrd_make_request(xfrd_zone_type* zone);
usr.sbin/nsd/xfrd.h
420
void xfrd_udp_release(xfrd_zone_type* zone);
usr.sbin/nsd/xfrd.h
436
void xfrd_handle_incoming_soa(xfrd_zone_type* zone, xfrd_soa_type* soa,
usr.sbin/nsd/xfrd.h
477
void xfrd_send_expire_notification(xfrd_zone_type* zone);
usr.sbin/nsd/xfrd.h
480
void xfrd_handle_notify_and_start_xfr(xfrd_zone_type* zone, xfrd_soa_type* soa);
usr.sbin/nsd/xfrd.h
487
xfrd_xfr_type *xfrd_prepare_zone_xfr(xfrd_zone_type *zone, uint16_t query_type);
usr.sbin/nsd/xfrd.h
489
void xfrd_delete_zone_xfr(xfrd_zone_type *zone, xfrd_xfr_type *xfr);
usr.sbin/nsd/zonec.c
111
struct zone *zone;
usr.sbin/nsd/zonec.c
131
rrset->zone = state->zone;
usr.sbin/nsd/zonec.c
140
if (!domain_find_non_cname_rrset(state->c.domain, state->zone))
usr.sbin/nsd/zonec.c
151
if (!domain_find_rrset(state->c.domain, state->zone, TYPE_CNAME))
usr.sbin/nsd/zonec.c
192
if (state->c.rrs[0]->owner == state->zone->apex)
usr.sbin/nsd/zonec.c
265
if (domain != state->zone->apex) {
usr.sbin/nsd/zonec.c
269
domain_to_string(state->zone->apex), s);
usr.sbin/nsd/zonec.c
276
if (!domain_is_subdomain(domain, state->zone->apex)) {
usr.sbin/nsd/zonec.c
278
snprintf(s, sizeof(s), "%s", domain_to_string(state->zone->apex));
usr.sbin/nsd/zonec.c
289
state->c.rrset = domain_find_rrset(state->c.domain, state->zone, state->c.type);
usr.sbin/nsd/zonec.c
291
state->c.rrset = domain_find_rrset_and_prev(state->c.domain, state->zone, state->c.type, &state->c.rrset_prev);
usr.sbin/nsd/zonec.c
355
struct zone *zone;
usr.sbin/nsd/zonec.c
362
zone = state->zone;
usr.sbin/nsd/zonec.c
364
assert((zone->includes.count == 0) == (zone->includes.paths == NULL));
usr.sbin/nsd/zonec.c
366
for (size_t i=0; i < zone->includes.count; i++)
usr.sbin/nsd/zonec.c
367
if (strcmp(path, zone->includes.paths[i]) == 0)
usr.sbin/nsd/zonec.c
371
database->region, zone->includes.count + 1, sizeof(*paths));
usr.sbin/nsd/zonec.c
372
if (zone->includes.count) {
usr.sbin/nsd/zonec.c
373
const size_t size = zone->includes.count * sizeof(*paths);
usr.sbin/nsd/zonec.c
374
memcpy(paths, zone->includes.paths, size);
usr.sbin/nsd/zonec.c
375
region_recycle(database->region, zone->includes.paths, size);
usr.sbin/nsd/zonec.c
377
paths[zone->includes.count] = region_strdup(database->region, path);
usr.sbin/nsd/zonec.c
378
zone->includes.count++;
usr.sbin/nsd/zonec.c
379
zone->includes.paths = paths;
usr.sbin/nsd/zonec.c
426
struct zone *zone)
usr.sbin/nsd/zonec.c
438
state.zone = zone;
usr.sbin/nsd/zonec.c
449
origin = domain_dname(zone->apex);
usr.sbin/nsd/zonec.c
455
options.secondary = zone_is_slave(zone->opts) != 0;
usr.sbin/nsd/zonec.c
478
if (!zone) {
usr.sbin/nsd/zonec.c
481
} else if (!zone->soa_rrset || zone->soa_rrset->rr_count == 0) {
usr.sbin/nsd/zonec.c
484
} else if (dname_compare(domain_dname(zone->soa_rrset->rrs[0]->owner), origin) != 0) {
usr.sbin/nsd/zonec.c
486
name, domain_to_string(zone->soa_rrset->rrs[0]->owner));
usr.sbin/nsd/zonec.c
490
if(!zone_is_slave(zone->opts) && !check_dname(zone))
usr.sbin/nsd/zonec.c
501
zone_type* zone = rrset->zone;
usr.sbin/nsd/zonec.c
502
assert(domain == zone->apex);
usr.sbin/nsd/zonec.c
505
zone->soa_rrset = rrset;
usr.sbin/nsd/zonec.c
508
if(zone->soa_nx_rrset == 0) {
usr.sbin/nsd/zonec.c
509
zone->soa_nx_rrset = region_alloc(db->region,
usr.sbin/nsd/zonec.c
515
zone->soa_nx_rrset->rr_count = 1;
usr.sbin/nsd/zonec.c
516
zone->soa_nx_rrset->next = 0;
usr.sbin/nsd/zonec.c
517
zone->soa_nx_rrset->zone = zone;
usr.sbin/nsd/zonec.c
519
zone->soa_nx_rrset->rrs = region_alloc(db->region,
usr.sbin/nsd/zonec.c
522
zone->soa_nx_rrset->rrs[0] = region_alloc(db->region,
usr.sbin/nsd/zonec.c
525
memcpy(zone->soa_nx_rrset->rrs[0], rrset->rrs[0],
usr.sbin/nsd/zonec.c
531
zone->soa_nx_rrset->rrs[0]->ttl = soa_minimum;
usr.sbin/nsd/zonec.c
534
zone->ns_rrset = rrset;
usr.sbin/nsd/zonec.c
538
zone->is_secure = 1;
usr.sbin/nsd/zonec.c
67
check_dname(zone_type* zone)
usr.sbin/nsd/zonec.c
70
for(domain = zone->apex; domain && domain_is_subdomain(domain,
usr.sbin/nsd/zonec.c
71
zone->apex); domain=domain_next(domain))
usr.sbin/nsd/zonec.h
60
struct zone *zone);
usr.sbin/tcpdump/privsep.c
588
const char *zone = NULL;
usr.sbin/tcpdump/privsep.c
598
zone = lt->tm_zone;
usr.sbin/tcpdump/privsep.c
607
if (zone == NULL)
usr.sbin/tcpdump/privsep.c
610
write_string(fd, zone);
usr.sbin/tcpdump/privsep.c
745
static char zone[PATH_MAX];
usr.sbin/tcpdump/privsep.c
765
if (read_string(priv_fd, zone, sizeof(zone), __func__))
usr.sbin/tcpdump/privsep.c
766
lt.tm_zone = zone;
usr.sbin/unbound/daemon/worker.c
2535
struct sockaddr_storage* addr, socklen_t addrlen, uint8_t* zone,
usr.sbin/unbound/daemon/worker.c
2547
ssl_upstream, tls_auth_name, addr, addrlen, zone, zonelen, q,
usr.sbin/unbound/daemon/worker.c
2596
uint8_t* ATTR_UNUSED(zone), size_t ATTR_UNUSED(zonelen), int ATTR_UNUSED(tcp_upstream),
usr.sbin/unbound/dnstap/dnstap.c
531
uint8_t *zone, size_t zone_len,
usr.sbin/unbound/dnstap/dnstap.c
556
dm.m.query_zone.data = zone;
usr.sbin/unbound/dnstap/dnstap.c
585
uint8_t *zone, size_t zone_len,
usr.sbin/unbound/dnstap/dnstap.c
613
dm.m.query_zone.data = zone;
usr.sbin/unbound/dnstap/dnstap.h
189
uint8_t *zone, size_t zone_len,
usr.sbin/unbound/dnstap/dnstap.h
214
uint8_t *zone, size_t zone_len,
usr.sbin/unbound/dnstap/unbound-dnstap-socket.c
1659
socklen_t ATTR_UNUSED(addrlen), uint8_t* ATTR_UNUSED(zone),
usr.sbin/unbound/dnstap/unbound-dnstap-socket.c
1693
socklen_t ATTR_UNUSED(addrlen), uint8_t* ATTR_UNUSED(zone),
usr.sbin/unbound/dynlibmod/dynlibmod.c
224
socklen_t addrlen, uint8_t* zone, size_t zonelen, struct regional* region,
usr.sbin/unbound/dynlibmod/dynlibmod.c
227
return ((inplace_cb_query_func_type*) cb_pair->cb)(qinfo, flags, qstate, addr, addrlen, zone, zonelen, region, id, cb_pair->cb_arg);
usr.sbin/unbound/dynlibmod/dynlibmod.h
78
socklen_t addrlen, uint8_t* zone, size_t zonelen, struct regional* region,
usr.sbin/unbound/edns-subnet/subnetmod.c
150
uint8_t* ATTR_UNUSED(zone), size_t ATTR_UNUSED(zonelen),
usr.sbin/unbound/edns-subnet/subnetmod.h
160
socklen_t addrlen, uint8_t* zone, size_t zonelen,
usr.sbin/unbound/iterator/iter_scrub.c
333
pkt_sub(sldns_buffer* pkt, uint8_t* comprname, uint8_t* zone)
usr.sbin/unbound/iterator/iter_scrub.c
337
return dname_subdomain_c(buf, zone);
usr.sbin/unbound/iterator/iter_scrub.c
342
sub_of_pkt(sldns_buffer* pkt, uint8_t* zone, uint8_t* comprname)
usr.sbin/unbound/iterator/iter_scrub.c
346
return dname_subdomain_c(zone, buf);
usr.sbin/unbound/libunbound/libunbound.c
1061
int ub_ctx_set_stub(struct ub_ctx* ctx, const char* zone, const char* addr,
usr.sbin/unbound/libunbound/libunbound.c
1068
if(zone) {
usr.sbin/unbound/libunbound/libunbound.c
1072
if(!parse_dname(zone, &nm, &nmlen, &nmlabs)) {
usr.sbin/unbound/libunbound/libunbound.c
1078
zone = ".";
usr.sbin/unbound/libunbound/libunbound.c
1100
elem = cfg_stub_find(&prev, zone);
usr.sbin/unbound/libunbound/libunbound.c
1114
if(elem) elem->name = strdup(zone);
usr.sbin/unbound/libunbound/libworker.c
889
struct sockaddr_storage* addr, socklen_t addrlen, uint8_t* zone,
usr.sbin/unbound/libunbound/libworker.c
901
tls_auth_name, addr, addrlen, zone, zonelen, q,
usr.sbin/unbound/libunbound/libworker.c
986
uint8_t* ATTR_UNUSED(zone), size_t ATTR_UNUSED(zonelen), int ATTR_UNUSED(tcp_upstream),
usr.sbin/unbound/libunbound/unbound.h
371
int ub_ctx_set_stub(struct ub_ctx* ctx, const char* zone, const char* addr,
usr.sbin/unbound/libunbound/worker.h
135
struct sockaddr_storage* addr, socklen_t addrlen, uint8_t* zone,
usr.sbin/unbound/libunbound/worker.h
79
struct sockaddr_storage* addr, socklen_t addrlen, uint8_t* zone,
usr.sbin/unbound/services/localzone.h
426
void local_zones_del_zone(struct local_zones* zones, struct local_zone* zone);
usr.sbin/unbound/services/outside_network.c
1071
&pend_tcp->pi->addr, comm_tcp, NULL, w->sq->zone,
usr.sbin/unbound/services/outside_network.c
2320
pend->sq->zone, pend->sq->zonelen, packet);
usr.sbin/unbound/services/outside_network.c
2608
&pend->pi->addr, comm_tcp, NULL, sq->zone,
usr.sbin/unbound/services/outside_network.c
2692
uint8_t* zone, size_t zonelen, int qtype, struct edns_option* opt_list,
usr.sbin/unbound/services/outside_network.c
2716
sq->zone = regional_alloc_init(region, zone, zonelen);
usr.sbin/unbound/services/outside_network.c
2717
if(!sq->zone) {
usr.sbin/unbound/services/outside_network.c
2985
if(!infra_host(sq->outnet->infra, &sq->addr, sq->addrlen, sq->zone,
usr.sbin/unbound/services/outside_network.c
3170
sq->addrlen, sq->zone, sq->zonelen);
usr.sbin/unbound/services/outside_network.c
3181
&pi->addr, c->type, c->ssl, sq->zone, sq->zonelen, sq->qbuf,
usr.sbin/unbound/services/outside_network.c
3206
sq->addrlen, sq->zone, sq->zonelen, -1,
usr.sbin/unbound/services/outside_network.c
3215
sq->addrlen, sq->zone, sq->zonelen, sq->qtype,
usr.sbin/unbound/services/outside_network.c
3230
sq->addrlen, sq->zone, sq->zonelen, sq->qtype,
usr.sbin/unbound/services/outside_network.c
3274
if(!infra_host(sq->outnet->infra, &sq->addr, sq->addrlen, sq->zone,
usr.sbin/unbound/services/outside_network.c
3367
sq->zone, sq->zonelen, sq->qtype, -1, sq->last_rtt,
usr.sbin/unbound/services/outside_network.c
3395
&p->pc->pif->addr, c->type, c->ssl, sq->zone, sq->zonelen,
usr.sbin/unbound/services/outside_network.c
3421
sq->zone, sq->zonelen, 0, (time_t)now.tv_sec)) {
usr.sbin/unbound/services/outside_network.c
3438
sq->zone, sq->zonelen, -1, (time_t)now.tv_sec)) {
usr.sbin/unbound/services/outside_network.c
3460
sq->zone, sq->zonelen, sq->qtype, roundtime,
usr.sbin/unbound/services/outside_network.c
3489
uint8_t* zone, size_t zonelen, struct module_qstate* qstate,
usr.sbin/unbound/services/outside_network.c
3518
if(!inplace_cb_query_call(env, qinfo, flags, addr, addrlen, zone,
usr.sbin/unbound/services/outside_network.c
3544
if(!infra_ratelimit_inc(env->infra_cache, zone,
usr.sbin/unbound/services/outside_network.c
3560
"delegation point", zone,
usr.sbin/unbound/services/outside_network.c
3567
addrlen, zone, zonelen, (int)qinfo->qtype,
usr.sbin/unbound/services/outside_network.c
3575
zone, zonelen, timenow);
usr.sbin/unbound/services/outside_network.c
3583
zone, zonelen, timenow);
usr.sbin/unbound/services/outside_network.h
520
uint8_t* zone;
usr.sbin/unbound/services/outside_network.h
707
uint8_t* zone, size_t zonelen, struct module_qstate* qstate,
usr.sbin/unbound/smallapp/unbound-anchor.c
1418
xml_is_zone_name(BIO* zone, const char* name)
usr.sbin/unbound/smallapp/unbound-anchor.c
1423
(void)BIO_seek(zone, 0);
usr.sbin/unbound/smallapp/unbound-anchor.c
1424
zlen = BIO_get_mem_data(zone, &z);
usr.sbin/unbound/smallapp/worker_cb.c
102
socklen_t ATTR_UNUSED(addrlen), uint8_t* ATTR_UNUSED(zone),
usr.sbin/unbound/smallapp/worker_cb.c
142
socklen_t ATTR_UNUSED(addrlen), uint8_t* ATTR_UNUSED(zone),
usr.sbin/unbound/testcode/doqclient.c
2595
socklen_t ATTR_UNUSED(addrlen), uint8_t* ATTR_UNUSED(zone),
usr.sbin/unbound/testcode/doqclient.c
2629
socklen_t ATTR_UNUSED(addrlen), uint8_t* ATTR_UNUSED(zone),
usr.sbin/unbound/testcode/fake_event.c
1191
pend->zone = NULL;
usr.sbin/unbound/testcode/fake_event.c
1241
pend->zone = NULL;
usr.sbin/unbound/testcode/fake_event.c
1276
socklen_t addrlen, uint8_t* zone, size_t zonelen,
usr.sbin/unbound/testcode/fake_event.c
1288
dname_str(zone, z);
usr.sbin/unbound/testcode/fake_event.c
1324
zone, zonelen, qstate, qstate->region)) {
usr.sbin/unbound/testcode/fake_event.c
1364
pend->zone = memdup(zone, zonelen);
usr.sbin/unbound/testcode/fake_event.c
1367
log_assert(pend->zone);
usr.sbin/unbound/testcode/fake_event.c
1417
free(p->zone);
usr.sbin/unbound/testcode/fake_event.c
171
free(pend->zone);
usr.sbin/unbound/testcode/fake_event.c
1840
pend->zone = NULL;
usr.sbin/unbound/testcode/fake_event.c
1931
pend->zone = NULL;
usr.sbin/unbound/testcode/fake_event.c
781
if(!infra_host(runtime->infra, &p->addr, p->addrlen, p->zone,
usr.sbin/unbound/testcode/fake_event.c
785
rto = infra_rtt_update(runtime->infra, &p->addr, p->addrlen, p->zone,
usr.sbin/unbound/testcode/replay.h
349
uint8_t* zone;
usr.sbin/unbound/testcode/unitauth.c
58
const char* zone;
usr.sbin/unbound/testcode/unitauth.c
725
check_read_exact(const char* name, const char* zone)
usr.sbin/unbound/testcode/unitauth.c
731
fname = create_tmp_file(zone);
usr.sbin/unbound/testcode/unitauth.c
765
if((ret=sldns_str2wire_dname_buf(q->zone, buf, dp_nmlen))!=0)
usr.sbin/unbound/testcode/unitauth.c
766
fatal_exit("cannot parse query dp zone %s : %s", q->zone,
usr.sbin/unbound/testcode/unitauth.c
965
for(q=queries; q->zone; q++) {
usr.sbin/unbound/testcode/unitauth.c
966
if(vbmp) printf("query %s: %s %s\n", q->zone, q->query,
usr.sbin/unbound/testcode/unitauth.c
977
check_queries(const char* name, const char* zone, struct q_ans* queries)
usr.sbin/unbound/testcode/unitauth.c
983
fname = create_tmp_file(zone);
usr.sbin/unbound/testcode/unitinfra.c
108
unit_assert( infra_get_lame_rtt(slab, &one, onelen, zone, zonelen,
usr.sbin/unbound/testcode/unitinfra.c
119
uint8_t* zone = (uint8_t*)"\007example\003com\000";
usr.sbin/unbound/testcode/unitinfra.c
137
unit_assert( infra_host(slab, &one, onelen, zone, zonelen, now,
usr.sbin/unbound/testcode/unitinfra.c
142
unit_assert( infra_rtt_update(slab, &one, onelen, zone, zonelen, LDNS_RR_TYPE_A, -1, init, now) );
usr.sbin/unbound/testcode/unitinfra.c
143
unit_assert( infra_host(slab, &one, onelen, zone, zonelen,
usr.sbin/unbound/testcode/unitinfra.c
148
unit_assert( infra_edns_update(slab, &one, onelen, zone, zonelen, -1, now) );
usr.sbin/unbound/testcode/unitinfra.c
149
unit_assert( infra_host(slab, &one, onelen, zone, zonelen,
usr.sbin/unbound/testcode/unitinfra.c
155
unit_assert( infra_host(slab, &one, onelen, zone, zonelen,
usr.sbin/unbound/testcode/unitinfra.c
161
zone, zonelen, now, 0, 0, LDNS_RR_TYPE_A) );
usr.sbin/unbound/testcode/unitinfra.c
162
unit_assert( (d=infra_lookup_host(slab, &one, onelen, zone, zonelen, 0, now, &k)) );
usr.sbin/unbound/testcode/unitinfra.c
171
zone, zonelen, now, 0, 0, LDNS_RR_TYPE_AAAA) );
usr.sbin/unbound/testcode/unitinfra.c
172
unit_assert( (d=infra_lookup_host(slab, &one, onelen, zone, zonelen, 0, now, &k)) );
usr.sbin/unbound/testcode/unitinfra.c
179
unit_assert( infra_host(slab, &one, onelen, zone, zonelen,
usr.sbin/unbound/testcode/unitinfra.c
183
unit_assert( infra_edns_update(slab, &one, onelen, zone, zonelen, 0, now) );
usr.sbin/unbound/testcode/unitinfra.c
184
unit_assert( infra_host(slab, &one, onelen, zone, zonelen,
usr.sbin/unbound/testcode/unitinfra.c
188
unit_assert( infra_edns_update(slab, &one, onelen, zone, zonelen, -1, now) );
usr.sbin/unbound/testcode/unitinfra.c
189
unit_assert( infra_host(slab, &one, onelen, zone, zonelen,
usr.sbin/unbound/testcode/unitinfra.c
194
test_keep_probing(slab, cfg, one, onelen, zone, zonelen, &now, 0, default_max_rtt);
usr.sbin/unbound/testcode/unitinfra.c
197
test_keep_probing(slab, cfg, one, onelen, zone, zonelen, &now, 1, default_max_rtt);
usr.sbin/unbound/testcode/unitinfra.c
200
test_keep_probing(slab, cfg, one, onelen, zone, zonelen, &now, 0, 3000);
usr.sbin/unbound/testcode/unitinfra.c
203
test_keep_probing(slab, cfg, one, onelen, zone, zonelen, &now, 1, 3000);
usr.sbin/unbound/testcode/unitinfra.c
50
struct sockaddr_storage* addr, socklen_t addrlen, uint8_t* zone,
usr.sbin/unbound/testcode/unitinfra.c
55
zone, zonelen, wr);
usr.sbin/unbound/testcode/unitinfra.c
68
uint8_t* zone, size_t zonelen, time_t *now, int keep_probing,
usr.sbin/unbound/testcode/unitinfra.c
83
unit_assert( infra_host(slab, &one, onelen, zone, zonelen,
usr.sbin/unbound/testcode/unitinfra.c
88
unit_assert( infra_rtt_update(slab, &one, onelen, zone, zonelen,
usr.sbin/unbound/testcode/unitinfra.c
90
unit_assert( infra_host(slab, &one, onelen, zone, zonelen,
usr.sbin/unbound/testcode/unitinfra.c
97
unit_assert( (d=infra_lookup_host(slab, &one, onelen, zone, zonelen, 0, *now, &k)) );
usr.sbin/unbound/testcode/unitneg.c
365
static int sum_subtree_inuse(struct val_neg_zone* zone,
usr.sbin/unbound/testcode/unitneg.c
370
RBTREE_FOR(d, struct val_neg_data*, &zone->tree) {
usr.sbin/unbound/testcode/unitneg.c
381
struct val_neg_zone* zone)
usr.sbin/unbound/testcode/unitneg.c
386
if(dname_subdomain_c(z->name, zone->name)) {
usr.sbin/unbound/testcode/unitneg.c
395
static void check_data(struct val_neg_zone* zone, struct val_neg_data* data)
usr.sbin/unbound/testcode/unitneg.c
413
unit_assert(data->count == sum_subtree_inuse(zone, data));
usr.sbin/unbound/testcode/unitneg.c
417
static void checkzonetree(struct val_neg_zone* zone)
usr.sbin/unbound/testcode/unitneg.c
422
RBTREE_FOR(d, struct val_neg_data*, &zone->tree) {
usr.sbin/unbound/testcode/unitneg.c
423
check_data(zone, d);
usr.sbin/unbound/testcode/unitneg.c
429
struct val_neg_zone* zone)
usr.sbin/unbound/testcode/unitneg.c
431
unit_assert(zone->nsec3_hash == 0);
usr.sbin/unbound/testcode/unitneg.c
432
unit_assert(zone->tree.cmp == &val_neg_data_compare);
usr.sbin/unbound/testcode/unitneg.c
433
unit_assert(zone->count != 0);
usr.sbin/unbound/testcode/unitneg.c
435
if(zone->tree.count == 0)
usr.sbin/unbound/testcode/unitneg.c
436
unit_assert(!zone->in_use);
usr.sbin/unbound/testcode/unitneg.c
438
if(!zone->in_use) {
usr.sbin/unbound/testcode/unitneg.c
440
log_nametypeclass(0, "zone", zone->name, 0, 0);
usr.sbin/unbound/testcode/unitneg.c
442
zone->in_use, zone->count,
usr.sbin/unbound/testcode/unitneg.c
443
(int)zone->tree.count);
usr.sbin/unbound/testcode/unitneg.c
447
unit_assert(zone->in_use);
usr.sbin/unbound/testcode/unitneg.c
450
if(zone->parent) {
usr.sbin/unbound/testcode/unitneg.c
451
unit_assert(zone->parent->count >= zone->count);
usr.sbin/unbound/testcode/unitneg.c
452
if(zone->parent->in_use) {
usr.sbin/unbound/testcode/unitneg.c
453
unit_assert(zone->parent->count > zone->count);
usr.sbin/unbound/testcode/unitneg.c
455
unit_assert(zone->parent->labs == zone->labs-1);
usr.sbin/unbound/testcode/unitneg.c
457
unit_assert(zone->name[0] == (zone->len-zone->parent->len-1));
usr.sbin/unbound/testcode/unitneg.c
458
unit_assert(query_dname_compare(zone->name + zone->name[0]+1,
usr.sbin/unbound/testcode/unitneg.c
459
zone->parent->name) == 0);
usr.sbin/unbound/testcode/unitneg.c
462
unit_assert(dname_is_root(zone->name));
usr.sbin/unbound/testcode/unitneg.c
465
unit_assert(zone->count == sum_zone_subtree_inuse(neg, zone));
usr.sbin/unbound/testcode/unitneg.c
468
checkzonetree(zone);
usr.sbin/unbound/util/data/msgreply.c
1308
uint8_t* zone, size_t zonelen, struct module_qstate* qstate,
usr.sbin/unbound/util/data/msgreply.c
1316
qstate, addr, addrlen, zone, zonelen, region,
usr.sbin/unbound/util/data/msgreply.h
758
uint8_t* zone, size_t zonelen, struct module_qstate* qstate,
usr.sbin/unbound/util/fptr_wlist.c
363
socklen_t addrlen, uint8_t* zone, size_t zonelen, int tcp_upstream,
usr.sbin/unbound/util/fptr_wlist.h
215
socklen_t addrlen, uint8_t* zone, size_t zonelen, int tcp_upstream,
usr.sbin/unbound/util/module.h
294
socklen_t addrlen, uint8_t* zone, size_t zonelen, struct regional* region,
usr.sbin/unbound/util/module.h
387
uint8_t* zone, size_t zonelen, int tcp_upstream, int ssl_upstream,
usr.sbin/unbound/util/net_help.c
615
void log_name_addr(enum verbosity_value v, const char* str, uint8_t* zone,
usr.sbin/unbound/util/net_help.c
639
dname_str(zone, namebuf);
usr.sbin/unbound/util/net_help.h
167
void log_name_addr(enum verbosity_value v, const char* str, uint8_t* zone,
usr.sbin/unbound/validator/val_neg.c
1007
zone = neg_find_zone(neg, signer, signer_len, dclass);
usr.sbin/unbound/validator/val_neg.c
1008
if(!zone) {
usr.sbin/unbound/validator/val_neg.c
1009
if(!(zone = neg_create_zone(neg, signer, signer_len,
usr.sbin/unbound/validator/val_neg.c
1016
val_neg_zone_take_inuse(zone);
usr.sbin/unbound/validator/val_neg.c
1024
zone->name)) continue;
usr.sbin/unbound/validator/val_neg.c
1026
neg_insert_data(neg, zone, rep->rrsets[i]);
usr.sbin/unbound/validator/val_neg.c
1028
if(zone->tree.count == 0) {
usr.sbin/unbound/validator/val_neg.c
1030
neg_delete_zone(neg, zone);
usr.sbin/unbound/validator/val_neg.c
1122
struct val_neg_zone* zone;
usr.sbin/unbound/validator/val_neg.c
1128
zone = neg_closest_zone_parent(neg_cache, qname, qname_len, labs,
usr.sbin/unbound/validator/val_neg.c
1130
while(zone && !zone->in_use)
usr.sbin/unbound/validator/val_neg.c
1131
zone = zone->parent;
usr.sbin/unbound/validator/val_neg.c
1132
if(!zone) {
usr.sbin/unbound/validator/val_neg.c
1138
if(zone->nsec3_hash) {
usr.sbin/unbound/validator/val_neg.c
1144
(void)neg_closest_data(zone, qname, qname_len, labs, &data);
usr.sbin/unbound/validator/val_neg.c
1161
if(query_dname_compare(data->name, zone->name) == 0)
usr.sbin/unbound/validator/val_neg.c
1165
zone->dclass, flags, region, 0, 0, now);
usr.sbin/unbound/validator/val_neg.c
1172
neg_find_nsec3_ce(struct val_neg_zone* zone, uint8_t* qname, size_t qname_len,
usr.sbin/unbound/validator/val_neg.c
1193
zone->nsec3_hash, zone->nsec3_iter, zone->nsec3_salt,
usr.sbin/unbound/validator/val_neg.c
1194
zone->nsec3_saltlen, hashce, sizeof(hashce))))
usr.sbin/unbound/validator/val_neg.c
1196
if(!(b32len=nsec3_hash_to_b32(hashce, celen, zone->name,
usr.sbin/unbound/validator/val_neg.c
1197
zone->len, b32, sizeof(b32))))
usr.sbin/unbound/validator/val_neg.c
1201
data = neg_find_data(zone, b32, b32len, zone->labs+1);
usr.sbin/unbound/validator/val_neg.c
1217
neg_params_ok(struct val_neg_zone* zone, struct ub_packed_rrset_key* rrset)
usr.sbin/unbound/validator/val_neg.c
1224
return (h == zone->nsec3_hash && it == zone->nsec3_iter &&
usr.sbin/unbound/validator/val_neg.c
1225
slen == zone->nsec3_saltlen &&
usr.sbin/unbound/validator/val_neg.c
1226
(slen != 0 && zone->nsec3_salt && s
usr.sbin/unbound/validator/val_neg.c
1227
&& memcmp(zone->nsec3_salt, s, slen) == 0));
usr.sbin/unbound/validator/val_neg.c
1232
neg_nsec3_getnc(struct val_neg_zone* zone, uint8_t* hashnc, size_t nclen,
usr.sbin/unbound/validator/val_neg.c
1240
if(!(b32len=nsec3_hash_to_b32(hashnc, nclen, zone->name,
usr.sbin/unbound/validator/val_neg.c
1241
zone->len, b32, maxb32)))
usr.sbin/unbound/validator/val_neg.c
1243
(void)neg_closest_data(zone, b32, b32len, zone->labs+1, &data);
usr.sbin/unbound/validator/val_neg.c
1244
if(!data && zone->tree.count != 0) {
usr.sbin/unbound/validator/val_neg.c
1247
data = (struct val_neg_data*)rbtree_last(&zone->tree);
usr.sbin/unbound/validator/val_neg.c
1255
LDNS_RR_TYPE_NSEC3, zone->dclass, 0, region, 0, 0, now);
usr.sbin/unbound/validator/val_neg.c
1258
if(!neg_params_ok(zone, nc_rrset))
usr.sbin/unbound/validator/val_neg.c
1265
neg_nsec3_proof_ds(struct val_neg_zone* zone, uint8_t* qname, size_t qname_len,
usr.sbin/unbound/validator/val_neg.c
1285
if(!zone->nsec3_hash)
usr.sbin/unbound/validator/val_neg.c
1288
if(!topname && qlabs > zone->labs + 1)
usr.sbin/unbound/validator/val_neg.c
1294
if(!(data=neg_find_nsec3_ce(zone, qname, qname_len, qlabs, buf,
usr.sbin/unbound/validator/val_neg.c
1301
LDNS_RR_TYPE_NSEC3, zone->dclass, 0, region, 1,
usr.sbin/unbound/validator/val_neg.c
1305
if(!neg_params_ok(zone, ce_rrset))
usr.sbin/unbound/validator/val_neg.c
1316
LDNS_RR_TYPE_DS, zone->dclass, region, 1)))
usr.sbin/unbound/validator/val_neg.c
1333
nc_rrset = neg_nsec3_getnc(zone, hashnc, nclen, rrset_cache,
usr.sbin/unbound/validator/val_neg.c
1337
if(!neg_params_ok(zone, nc_rrset))
usr.sbin/unbound/validator/val_neg.c
1345
if(nsec3_covers(zone->name, &c, nc_rrset, 0, buf)) {
usr.sbin/unbound/validator/val_neg.c
1352
LDNS_RR_TYPE_DS, zone->dclass, region, 3)))
usr.sbin/unbound/validator/val_neg.c
1376
struct regional* region, struct dns_msg* msg, struct val_neg_zone* zone)
usr.sbin/unbound/validator/val_neg.c
1382
if(zone) {
usr.sbin/unbound/validator/val_neg.c
1383
nm = zone->name;
usr.sbin/unbound/validator/val_neg.c
1384
nmlen = zone->len;
usr.sbin/unbound/validator/val_neg.c
1385
dclass = zone->dclass;
usr.sbin/unbound/validator/val_neg.c
1424
struct val_neg_zone* zone;
usr.sbin/unbound/validator/val_neg.c
1563
zone = neg_closest_zone_parent(neg, zname, zname_len, zname_labs,
usr.sbin/unbound/validator/val_neg.c
1565
while(zone && !zone->in_use)
usr.sbin/unbound/validator/val_neg.c
1566
zone = zone->parent;
usr.sbin/unbound/validator/val_neg.c
1569
if(zone && topname) {
usr.sbin/unbound/validator/val_neg.c
1570
if(!dname_subdomain_c(zone->name, topname))
usr.sbin/unbound/validator/val_neg.c
1571
zone = NULL;
usr.sbin/unbound/validator/val_neg.c
1573
if(!zone) {
usr.sbin/unbound/validator/val_neg.c
1578
msg = neg_nsec3_proof_ds(zone, qinfo->qname, qinfo->qname_len,
usr.sbin/unbound/validator/val_neg.c
1580
if(msg && addsoa && !add_soa(rrset_cache, now, region, msg, zone)) {
usr.sbin/unbound/validator/val_neg.c
238
z = el->zone;
usr.sbin/unbound/validator/val_neg.c
311
static struct val_neg_data* neg_find_data(struct val_neg_zone* zone,
usr.sbin/unbound/validator/val_neg.c
322
rbtree_search(&zone->tree, lookfor.node.key);
usr.sbin/unbound/validator/val_neg.c
418
struct val_neg_zone* zone, uint8_t* nm, size_t nm_len, int labs)
usr.sbin/unbound/validator/val_neg.c
427
if(rbtree_find_less_equal(&zone->tree, &key, &res)) {
usr.sbin/unbound/validator/val_neg.c
459
struct val_neg_zone* zone =
usr.sbin/unbound/validator/val_neg.c
460
(struct val_neg_zone*)calloc(1, sizeof(*zone));
usr.sbin/unbound/validator/val_neg.c
461
if(!zone) {
usr.sbin/unbound/validator/val_neg.c
464
zone->node.key = zone;
usr.sbin/unbound/validator/val_neg.c
465
zone->name = memdup(nm, nm_len);
usr.sbin/unbound/validator/val_neg.c
466
if(!zone->name) {
usr.sbin/unbound/validator/val_neg.c
467
free(zone);
usr.sbin/unbound/validator/val_neg.c
470
zone->len = nm_len;
usr.sbin/unbound/validator/val_neg.c
471
zone->labs = labs;
usr.sbin/unbound/validator/val_neg.c
472
zone->dclass = dclass;
usr.sbin/unbound/validator/val_neg.c
474
rbtree_init(&zone->tree, &val_neg_data_compare);
usr.sbin/unbound/validator/val_neg.c
475
return zone;
usr.sbin/unbound/validator/val_neg.c
495
struct val_neg_zone* zone, *prev = NULL, *first = NULL;
usr.sbin/unbound/validator/val_neg.c
501
zone = neg_setup_zone_node(nm, nm_len, i, dclass);
usr.sbin/unbound/validator/val_neg.c
502
if(!zone) {
usr.sbin/unbound/validator/val_neg.c
514
first = zone;
usr.sbin/unbound/validator/val_neg.c
516
prev->parent = zone;
usr.sbin/unbound/validator/val_neg.c
519
prev = zone;
usr.sbin/unbound/validator/val_neg.c
525
void val_neg_zone_take_inuse(struct val_neg_zone* zone)
usr.sbin/unbound/validator/val_neg.c
527
if(!zone->in_use) {
usr.sbin/unbound/validator/val_neg.c
529
zone->in_use = 1;
usr.sbin/unbound/validator/val_neg.c
531
for(p=zone; p; p = p->parent) {
usr.sbin/unbound/validator/val_neg.c
540
struct val_neg_zone* zone;
usr.sbin/unbound/validator/val_neg.c
551
zone = neg_zone_chain(nm, nm_len, labs, dclass, parent);
usr.sbin/unbound/validator/val_neg.c
552
if(!zone) {
usr.sbin/unbound/validator/val_neg.c
557
p = zone;
usr.sbin/unbound/validator/val_neg.c
569
return zone;
usr.sbin/unbound/validator/val_neg.c
680
static void wipeout(struct val_neg_cache* neg, struct val_neg_zone* zone,
usr.sbin/unbound/validator/val_neg.c
707
if(!dname_subdomain_c(el->name, zone->name) ||
usr.sbin/unbound/validator/val_neg.c
708
!dname_subdomain_c(end, zone->name))
usr.sbin/unbound/validator/val_neg.c
712
if(query_dname_compare(end, zone->name) == 0) {
usr.sbin/unbound/validator/val_neg.c
756
struct val_neg_zone* zone, struct ub_packed_rrset_key* nsec)
usr.sbin/unbound/validator/val_neg.c
774
parent = neg_closest_data_parent(zone, nm, nm_len, labs);
usr.sbin/unbound/validator/val_neg.c
800
p->zone = zone;
usr.sbin/unbound/validator/val_neg.c
801
(void)rbtree_insert(&zone->tree, &p->node);
usr.sbin/unbound/validator/val_neg.c
831
(h != zone->nsec3_hash || it != zone->nsec3_iter ||
usr.sbin/unbound/validator/val_neg.c
832
slen != zone->nsec3_saltlen ||
usr.sbin/unbound/validator/val_neg.c
833
(slen != 0 && zone->nsec3_salt && s
usr.sbin/unbound/validator/val_neg.c
834
&& memcmp(zone->nsec3_salt, s, slen) != 0))) {
usr.sbin/unbound/validator/val_neg.c
843
free(zone->nsec3_salt);
usr.sbin/unbound/validator/val_neg.c
844
zone->nsec3_salt = sa;
usr.sbin/unbound/validator/val_neg.c
845
zone->nsec3_saltlen = slen;
usr.sbin/unbound/validator/val_neg.c
846
zone->nsec3_iter = it;
usr.sbin/unbound/validator/val_neg.c
847
zone->nsec3_hash = h;
usr.sbin/unbound/validator/val_neg.c
850
free(zone->nsec3_salt);
usr.sbin/unbound/validator/val_neg.c
851
zone->nsec3_salt = NULL;
usr.sbin/unbound/validator/val_neg.c
852
zone->nsec3_saltlen = 0;
usr.sbin/unbound/validator/val_neg.c
853
zone->nsec3_iter = it;
usr.sbin/unbound/validator/val_neg.c
854
zone->nsec3_hash = h;
usr.sbin/unbound/validator/val_neg.c
860
wipeout(neg, zone, el, nsec);
usr.sbin/unbound/validator/val_neg.c
897
struct val_neg_zone* zone;
usr.sbin/unbound/validator/val_neg.c
924
zone = neg_find_zone(neg, dname, dname_len, rrset_class);
usr.sbin/unbound/validator/val_neg.c
925
if(!zone) {
usr.sbin/unbound/validator/val_neg.c
926
if(!(zone = neg_create_zone(neg, dname, dname_len,
usr.sbin/unbound/validator/val_neg.c
933
val_neg_zone_take_inuse(zone);
usr.sbin/unbound/validator/val_neg.c
940
zone->name)) continue;
usr.sbin/unbound/validator/val_neg.c
942
neg_insert_data(neg, zone, rep->rrsets[i]);
usr.sbin/unbound/validator/val_neg.c
944
if(zone->tree.count == 0) {
usr.sbin/unbound/validator/val_neg.c
946
neg_delete_zone(neg, zone);
usr.sbin/unbound/validator/val_neg.c
960
static int neg_closest_data(struct val_neg_zone* zone,
usr.sbin/unbound/validator/val_neg.c
969
if(rbtree_find_less_equal(&zone->tree, &key, &r)) {
usr.sbin/unbound/validator/val_neg.c
987
struct val_neg_zone* zone;
usr.sbin/unbound/validator/val_neg.h
161
struct val_neg_zone* zone;
usr.sbin/unbound/validator/val_neg.h
219
uint8_t* zone);
usr.sbin/unbound/validator/val_neg.h
259
struct val_neg_zone* zone, struct ub_packed_rrset_key* nsec);
usr.sbin/unbound/validator/val_neg.h
300
void val_neg_zone_take_inuse(struct val_neg_zone* zone);
usr.sbin/unbound/validator/val_nsec3.c
1008
while(dname_subdomain_c(nm, flt->zone)) {
usr.sbin/unbound/validator/val_nsec3.c
107
uint8_t* zone;
usr.sbin/unbound/validator/val_nsec3.c
1249
if(!flt.zone)
usr.sbin/unbound/validator/val_nsec3.c
1256
flt.zone, 0, 0);
usr.sbin/unbound/validator/val_nsec3.c
1437
if(!flt.zone)
usr.sbin/unbound/validator/val_nsec3.c
1462
if(!flt.zone)
usr.sbin/unbound/validator/val_nsec3.c
1564
if(!flt.zone) {
usr.sbin/unbound/validator/val_nsec3.c
1661
if(!flt.zone)
usr.sbin/unbound/validator/val_nsec3.c
258
size_t nsec3_hash_to_b32(uint8_t* hash, size_t hashlen, uint8_t* zone,
usr.sbin/unbound/validator/val_nsec3.c
272
memmove(buf+ret, zone, zonelen);
usr.sbin/unbound/validator/val_nsec3.c
279
uint8_t* nm, *zone;
usr.sbin/unbound/validator/val_nsec3.c
284
zone = rrset->rk.dname;
usr.sbin/unbound/validator/val_nsec3.c
286
dname_remove_label(&zone, &zonelen);
usr.sbin/unbound/validator/val_nsec3.c
287
return nsec3_hash_to_b32(nm, nmlen, zone, zonelen, buf, max);
usr.sbin/unbound/validator/val_nsec3.c
341
if(!filter->zone) /* empty list */
usr.sbin/unbound/validator/val_nsec3.c
353
if(query_dname_compare(nm, filter->zone) != 0)
usr.sbin/unbound/validator/val_nsec3.c
420
filter->zone = NULL;
usr.sbin/unbound/validator/val_nsec3.c
441
if(dname_subdomain_c(qinfo->qname, nm) && (!filter->zone ||
usr.sbin/unbound/validator/val_nsec3.c
442
dname_subdomain_c(nm, filter->zone))) {
usr.sbin/unbound/validator/val_nsec3.c
448
filter->zone = nm;
usr.sbin/unbound/validator/val_nsec3.c
800
query_dname_compare(nm+(size_t)nm[0]+1, flt->zone) == 0) {
usr.sbin/unbound/validator/val_nsec3.c
868
nsec3_covers(uint8_t* zone, struct nsec3_cached_hash* hash,
usr.sbin/unbound/validator/val_nsec3.c
884
(size_t)*rrset->rk.dname, zone) != 0)
usr.sbin/unbound/validator/val_nsec3.c
965
if(nsec3_covers(flt->zone, hash, s, i_rr,
usr.sbin/unbound/validator/val_nsec3.h
352
size_t nsec3_hash_to_b32(uint8_t* hash, size_t hashlen, uint8_t* zone,
usr.sbin/unbound/validator/val_nsec3.h
426
int nsec3_covers(uint8_t* zone, struct nsec3_cached_hash* hash,
usr.sbin/zdump/zdump.c
103
__progname, zone, abbrp, wp);
usr.sbin/zdump/zdump.c
402
show(char *zone, time_t t, int v)
usr.sbin/zdump/zdump.c
406
printf("%-*s ", (int) longest, zone);
usr.sbin/zdump/zdump.c
431
abbrok(abbr(tmp), zone);
usr.sbin/zdump/zdump.c
72
static void abbrok(const char *abbrp, const char *zone);
usr.sbin/zdump/zdump.c
76
static void show(char *zone, time_t t, int v);
usr.sbin/zdump/zdump.c
81
abbrok(const char * const abbrp, const char * const zone)
usr.sbin/zic/zic.c
126
static void outzone(const struct zone *zp, int ntzones);
usr.sbin/zic/zic.c
1657
doabbr(char *abbr, size_t size, struct zone const *zp, const char *letters,
usr.sbin/zic/zic.c
1829
stringzone(char *result, size_t size, const struct zone *zpfirst, int zonecount)
usr.sbin/zic/zic.c
1831
const struct zone *zp;
usr.sbin/zic/zic.c
1942
outzone(const struct zone *zpfirst, int zonecount)
usr.sbin/zic/zic.c
1944
const struct zone *zp;
usr.sbin/zic/zic.c
242
static struct zone *zones;
usr.sbin/zic/zic.c
666
struct zone *zp;
usr.sbin/zic/zic.c
932
static struct zone z;