• Home
  • Raw
  • Download

Lines Matching refs:daemon

117     for (serv = daemon->servers; serv; serv = serv->next)  in search_servers()
165 if (flags == 0 && !(qtype & F_BIGNAME) && (daemon->options & OPT_NODOTS_LOCAL) && in search_servers()
189 unsigned int crc = questions_crc(header, plen, daemon->namebuff); in forward_query()
191 unsigned short gotname = extract_request(header, plen, daemon->namebuff, NULL); in forward_query()
195 if (!daemon->servers) in forward_query()
201 if (!(daemon->options & OPT_ORDER)) { in forward_query()
203 daemon->last_server = NULL; in forward_query()
206 if (!(start = forward->sentto->next)) start = daemon->servers; /* at end of list, recycle */ in forward_query()
209 if (gotname) flags = search_servers(now, &addrp, gotname, daemon->namebuff, &type, &domain); in forward_query()
233 if (type != 0 || (daemon->options & OPT_ORDER)) in forward_query()
234 start = daemon->servers; in forward_query()
235 else if (!(start = daemon->last_server) || daemon->forwardcount++ > FORWARD_TEST || in forward_query()
236 difftime(now, daemon->forwardtime) > FORWARD_TIME) { in forward_query()
237 start = daemon->servers; in forward_query()
239 daemon->forwardcount = 0; in forward_query()
240 daemon->forwardtime = now; in forward_query()
270 daemon->rfd_save = forward->rfd6; in forward_query()
276 daemon->rfd_save = forward->rfd4; in forward_query()
298 daemon->srv_save = start; in forward_query()
299 daemon->packet_len = plen; in forward_query()
301 if (!gotname) strcpy(daemon->namebuff, "query"); in forward_query()
303 log_query(F_SERVER | F_IPV4 | F_FORWARD, daemon->namebuff, in forward_query()
307 log_query(F_SERVER | F_IPV6 | F_FORWARD, daemon->namebuff, in forward_query()
318 if (!(start = start->next)) start = daemon->servers; in forward_query()
332 plen = setup_reply(header, plen, addrp, flags, daemon->local_ttl); in forward_query()
333 send_from(udpfd, daemon->options & OPT_NOWILD, (char*) header, plen, udpaddr, dst_addr, in forward_query()
354 if (udpsz > daemon->edns_pktsz) PUTSHORT(daemon->edns_pktsz, psave); in process_reply()
363 prettyprint_addr(&server->addr, daemon->namebuff); in process_reply()
364 … my_syslog(LOG_WARNING, _("nameserver %s refused to do a recursive query"), daemon->namebuff); in process_reply()
365 if (!(daemon->options & OPT_LOG)) server->flags |= SERV_WARNED_RECURSIVE; in process_reply()
368 if (daemon->bogus_addr && header->rcode != NXDOMAIN && in process_reply()
369 check_for_bogus_wildcard(header, n, daemon->namebuff, daemon->bogus_addr, now)) { in process_reply()
374 if (header->rcode == NXDOMAIN && extract_request(header, n, daemon->namebuff, NULL) && in process_reply()
375 check_for_local_domain(daemon->namebuff, now)) { in process_reply()
384 if (extract_addresses(header, n, daemon->namebuff, now)) { in process_reply()
413 ssize_t n = recvfrom(fd, daemon->packet, daemon->edns_pktsz, 0, &serveraddr.sa, &addrlen); in reply_query()
418 daemon->srv_save = NULL; in reply_query()
427 for (server = daemon->servers; server; server = server->next) in reply_query()
432 header = (HEADER*) daemon->packet; in reply_query()
435 !(forward = lookup_frec(ntohs(header->id), questions_crc(header, n, daemon->namebuff)))) in reply_query()
440 if ((header->rcode == SERVFAIL || header->rcode == REFUSED) && !(daemon->options & OPT_ORDER) && in reply_query()
470 for (last_server = daemon->servers; last_server; last_server = last_server->next) in reply_query()
478 if (!(daemon->options & OPT_ALL_SERVERS)) daemon->last_server = server; in reply_query()
490 send_from(forward->fd, daemon->options & OPT_NOWILD, daemon->packet, nn, in reply_query()
498 HEADER* header = (HEADER*) daemon->packet; in receive_query()
522 daemon->srv_save = NULL; in receive_query()
524 if (listen->family == AF_INET && (daemon->options & OPT_NOWILD)) { in receive_query()
532 iov[0].iov_base = daemon->packet; in receive_query()
533 iov[0].iov_len = daemon->edns_pktsz; in receive_query()
552 if (!(daemon->options & OPT_NOWILD)) { in receive_query()
591 if (listen->family == AF_INET && (daemon->options & OPT_LOCALISE) && in receive_query()
598 if (extract_request(header, (size_t) n, daemon->namebuff, &type)) { in receive_query()
604 log_query(F_QUERY | F_IPV4 | F_FORWARD, daemon->namebuff, in receive_query()
608 log_query(F_QUERY | F_IPV6 | F_FORWARD, daemon->namebuff, in receive_query()
615 send_from(listen->fd, daemon->options & OPT_NOWILD, (char*) header, m, &source_addr, in receive_query()
617 daemon->local_answer++; in receive_query()
620 daemon->queries_forwarded++; in receive_query()
622 daemon->local_answer++; in receive_query()
649 if ((gotname = extract_request(header, (unsigned int) size, daemon->namebuff, &qtype))) { in tcp_request()
659 log_query(F_QUERY | F_IPV4 | F_FORWARD, daemon->namebuff, in tcp_request()
663 log_query(F_QUERY | F_IPV6 | F_FORWARD, daemon->namebuff, in tcp_request()
683 flags = search_servers(now, &addrp, gotname, daemon->namebuff, &type, &domain); in tcp_request()
685 if (type != 0 || (daemon->options & OPT_ORDER) || !daemon->last_server) in tcp_request()
686 last_server = daemon->servers; in tcp_request()
688 last_server = daemon->last_server; in tcp_request()
692 unsigned int crc = questions_crc(header, (unsigned int) size, daemon->namebuff); in tcp_request()
701 if (!(last_server = last_server->next)) last_server = daemon->servers; in tcp_request()
740 if (!gotname) strcpy(daemon->namebuff, "query"); in tcp_request()
742 log_query(F_SERVER | F_IPV4 | F_FORWARD, daemon->namebuff, in tcp_request()
746 log_query(F_SERVER | F_IPV6 | F_FORWARD, daemon->namebuff, in tcp_request()
756 if (crc == questions_crc(header, (unsigned int) m, daemon->namebuff)) in tcp_request()
765 m = setup_reply(header, (unsigned int) size, addrp, flags, daemon->local_ttl); in tcp_request()
782 f->next = daemon->frec_list; in allocate_frec()
789 daemon->frec_list = f; in allocate_frec()
803 if (daemon->randomsocks[i].refcount == 0) { in allocate_rfd()
804 if ((daemon->randomsocks[i].fd = random_sock(family)) == -1) break; in allocate_rfd()
806 daemon->randomsocks[i].refcount = 1; in allocate_rfd()
807 daemon->randomsocks[i].family = family; in allocate_rfd()
808 return &daemon->randomsocks[i]; in allocate_rfd()
814 if (daemon->randomsocks[j].refcount != 0 && daemon->randomsocks[j].family == family && in allocate_rfd()
815 daemon->randomsocks[j].refcount != 0xffff) { in allocate_rfd()
817 daemon->randomsocks[j].refcount++; in allocate_rfd()
818 return &daemon->randomsocks[j]; in allocate_rfd()
848 for (f = daemon->frec_list, oldest = NULL, target = NULL, count = 0; f; f = f->next, count++) in get_new_frec()
870 if (difftime(now, oldest->time) < 2 * TIMEOUT && count <= daemon->ftabsize && in get_new_frec()
882 if (count > daemon->ftabsize) { in get_new_frec()
897 for (f = daemon->frec_list; f; f = f->next) in lookup_frec()
907 for (f = daemon->frec_list; f; f = f->next) in lookup_frec_by_sender()
918 for (f = daemon->frec_list; f; f = f->next) in server_gone()
921 if (daemon->last_server == server) daemon->last_server = NULL; in server_gone()
923 if (daemon->srv_save == server) daemon->srv_save = NULL; in server_gone()