Lines Matching refs:daemon
19 struct daemon *daemon; variable
110 if (daemon->edns_pktsz < PACKETSZ) in main()
111 daemon->edns_pktsz = PACKETSZ; in main()
112 daemon->packet_buff_sz = daemon->edns_pktsz > DNSMASQ_PACKETSZ ? in main()
113 daemon->edns_pktsz : DNSMASQ_PACKETSZ; in main()
114 daemon->packet = safe_malloc(daemon->packet_buff_sz); in main()
117 if (!daemon->lease_file) in main()
119 if (daemon->dhcp) in main()
120 daemon->lease_file = LEASEFILE; in main()
134 if (!(daemon->options & OPT_NOWILD)) in main()
137 daemon->options |= OPT_NOWILD; in main()
142 if (daemon->max_logs != 0) in main()
151 if (daemon->dhcp) in main()
164 if (daemon->options & OPT_NOWILD) in main()
166 daemon->listeners = create_bound_listeners(); in main()
168 for (if_tmp = daemon->if_names; if_tmp; if_tmp = if_tmp->next) in main()
172 for (if_tmp = daemon->if_addrs; if_tmp; if_tmp = if_tmp->next) in main()
175 prettyprint_addr(&if_tmp->addr, daemon->namebuff); in main()
176 die(_("no interface with address %s"), daemon->namebuff, EC_BADNET); in main()
179 else if ((daemon->port != 0 || (daemon->options & OPT_TFTP)) && in main()
180 !(daemon->listeners = create_wildcard_listeners())) in main()
183 if (daemon->port != 0) in main()
186 if (daemon->port != 0) in main()
191 if (daemon->dhcp && daemon->lease_change_command && daemon->scriptuser) in main()
193 if ((ent_pw = getpwnam(daemon->scriptuser))) in main()
199 baduser = daemon->scriptuser; in main()
203 if (daemon->username && !(ent_pw = getpwnam(daemon->username))) in main()
204 baduser = daemon->username; in main()
205 else if (daemon->groupname && !(gp = getgrnam(daemon->groupname))) in main()
206 baduser = daemon->groupname; in main()
212 if (!daemon->group_set && !gp) in main()
219 daemon->groupname = gp->gr_name; in main()
258 if (!(daemon->options & OPT_DEBUG)) in main()
271 if (!(daemon->options & OPT_NO_FORK)) in main()
312 if (daemon->runfile) in main()
317 if ((pidfile = fopen(daemon->runfile, "w"))) in main()
342 daemon->helperfd = -1; in main()
344 if (daemon->dhcp && daemon->lease_change_command) in main()
345 daemon->helperfd = create_helper(pipewrite, err_pipe[1], script_uid, script_gid, max_fd); in main()
348 if (!(daemon->options & OPT_DEBUG) && getuid() == 0) in main()
432 if (daemon->options & OPT_DEBUG) in main()
436 if (daemon->port == 0) in main()
438 else if (daemon->cachesize != 0) in main()
439 my_syslog(LOG_INFO, _("started, version %s cachesize %d"), VERSION, daemon->cachesize); in main()
447 daemon->log_file, strerror(log_err)); in main()
452 if (!(daemon->options & OPT_NOWILD)) in main()
453 for (if_tmp = daemon->if_names; if_tmp; if_tmp = if_tmp->next) in main()
457 if (daemon->port != 0 && (daemon->options & OPT_NO_RESOLV)) in main()
459 if (daemon->resolv_files && !daemon->resolv_files->is_default) in main()
461 daemon->resolv_files = NULL; in main()
462 if (!daemon->servers) in main()
466 if (daemon->max_logs != 0) in main()
467 …my_syslog(LOG_INFO, _("asynchronous logging enabled, queue limit is %d messages"), daemon->max_log… in main()
470 if (daemon->dhcp) in main()
474 for (dhcp_tmp = daemon->dhcp; dhcp_tmp; dhcp_tmp = dhcp_tmp->next) in main()
476 prettyprint_time(daemon->dhcp_buff2, dhcp_tmp->lease_time); in main()
477 strcpy(daemon->dhcp_buff, inet_ntoa(dhcp_tmp->start)); in main()
484 daemon->dhcp_buff, inet_ntoa(dhcp_tmp->end), daemon->dhcp_buff2); in main()
493 if (daemon->port != 0) in main()
521 if (daemon->dhcp) in main()
523 FD_SET(daemon->dhcpfd, &rset); in main()
524 bump_maxfd(daemon->dhcpfd, &maxfd); in main()
529 FD_SET(daemon->netlinkfd, &rset); in main()
530 bump_maxfd(daemon->netlinkfd, &maxfd); in main()
542 FD_SET(daemon->helperfd, &wset); in main()
543 bump_maxfd(daemon->helperfd, &maxfd); in main()
567 if (daemon->last_resolv == 0 || in main()
568 difftime(now, daemon->last_resolv) > 1.0 || in main()
569 difftime(now, daemon->last_resolv) < -1.0) in main()
571 daemon->last_resolv = now; in main()
573 if (daemon->port != 0 && !(daemon->options & OPT_NO_POLL)) in main()
581 if (FD_ISSET(daemon->netlinkfd, &rset)) in main()
592 if (daemon->dhcp && FD_ISSET(daemon->dhcpfd, &rset)) in main()
596 if (daemon->helperfd != -1 && FD_ISSET(daemon->helperfd, &wset)) in main()
681 ev->event == EVENT_USER_ERR ? daemon->username : daemon->scriptuser, in fatal_event()
685 die(_("failed to change group-id to %s: %s"), daemon->groupname, EC_MISC); in fatal_event()
688 die(_("failed to open pidfile %s: %s"), daemon->runfile, EC_FILE); in fatal_event()
691 die(_("cannot open %s: %s"), daemon->log_file ? daemon->log_file : "log", EC_FILE); in fatal_event()
706 if (daemon->port != 0 && daemon->resolv_files && (daemon->options & OPT_NO_POLL)) in async_event()
708 reload_servers(daemon->resolv_files->name); in async_event()
717 if (daemon->port != 0) in async_event()
723 if (daemon->dhcp) in async_event()
741 if (daemon->tcp_pids[i] == p) in async_event()
742 daemon->tcp_pids[i] = 0; in async_event()
755 daemon->lease_change_command, strerror(ev.data)); in async_event()
768 if (daemon->log_file != NULL) in async_event()
769 log_reopen(daemon->log_file); in async_event()
775 if (daemon->tcp_pids[i] != 0) in async_event()
776 kill(daemon->tcp_pids[i], SIGALRM); in async_event()
780 if (daemon->helperfd != -1) in async_event()
783 if ((i = fcntl(daemon->helperfd, F_GETFL)) != -1) in async_event()
784 fcntl(daemon->helperfd, F_SETFL, i & ~O_NONBLOCK); in async_event()
788 close(daemon->helperfd); in async_event()
792 if (daemon->lease_stream) in async_event()
793 fclose(daemon->lease_stream); in async_event()
795 if (daemon->runfile) in async_event()
796 unlink(daemon->runfile); in async_event()
812 for (latest = NULL, res = daemon->resolv_files; res; res = res->next) in poll_resolv()
841 if (daemon->options & OPT_RELOAD) in poll_resolv()
858 if (daemon->port != 0) in clear_cache_and_reload()
862 if (daemon->dhcp) in clear_cache_and_reload()
864 if (daemon->options & OPT_ETHERS) in clear_cache_and_reload()
867 dhcp_update_configs(daemon->dhcp_conf); in clear_cache_and_reload()
936 if (daemon->port != 0) in set_dns_listeners()
939 for (serverfdp = daemon->sfds; serverfdp; serverfdp = serverfdp->next) in set_dns_listeners()
945 if (daemon->port != 0 && !daemon->osport) in set_dns_listeners()
947 if (daemon->randomsocks[i].refcount != 0) in set_dns_listeners()
949 FD_SET(daemon->randomsocks[i].fd, set); in set_dns_listeners()
950 bump_maxfd(daemon->randomsocks[i].fd, maxfdp); in set_dns_listeners()
953 for (listener = daemon->listeners; listener; listener = listener->next) in set_dns_listeners()
966 if (daemon->tcp_pids[i] == 0) in set_dns_listeners()
983 for (serverfdp = daemon->sfds; serverfdp; serverfdp = serverfdp->next) in check_dns_listeners()
987 if (daemon->port != 0 && !daemon->osport) in check_dns_listeners()
989 if (daemon->randomsocks[i].refcount != 0 && in check_dns_listeners()
990 FD_ISSET(daemon->randomsocks[i].fd, set)) in check_dns_listeners()
991 reply_query(daemon->randomsocks[i].fd, daemon->randomsocks[i].family, now); in check_dns_listeners()
993 for (listener = daemon->listeners; listener; listener = listener->next) in check_dns_listeners()
1009 if (daemon->options & OPT_NOWILD) in check_dns_listeners()
1024 for (iface = daemon->interfaces; iface; iface = iface->next) in check_dns_listeners()
1035 else if (!(daemon->options & OPT_DEBUG) && (p = fork()) != 0) in check_dns_listeners()
1041 if (daemon->tcp_pids[i] == 0) in check_dns_listeners()
1043 daemon->tcp_pids[i] = p; in check_dns_listeners()
1061 if (!(daemon->options & OPT_DEBUG)) in check_dns_listeners()
1065 for (s = daemon->servers; s; s = s->next) in check_dns_listeners()
1085 for (s = daemon->servers; s; s = s->next) in check_dns_listeners()
1092 if (!(daemon->options & OPT_DEBUG)) in check_dns_listeners()
1147 fd = daemon->dhcp_icmp_fd; in icmp_ping()