From: wessels <> Date: Wed, 4 Dec 1996 23:28:34 +0000 (+0000) Subject: fatal() if no dnsservers start. X-Git-Tag: SQUID_3_0_PRE1~5346 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f9a568ec1d550201417299561fa2c83f106f9901;p=thirdparty%2Fsquid.git fatal() if no dnsservers start. Report how many are actually running --- diff --git a/src/dns.cc b/src/dns.cc index 18ba15f257..632064287c 100644 --- a/src/dns.cc +++ b/src/dns.cc @@ -1,5 +1,5 @@ /* - * $Id: dns.cc,v 1.25 1996/12/02 04:15:09 wessels Exp $ + * $Id: dns.cc,v 1.26 1996/12/04 16:28:34 wessels Exp $ * * DEBUG: section 34 Dnsserver interface * AUTHOR: Harvest Derived @@ -244,13 +244,11 @@ dnsOpenServers(void) dnsFreeMemory(); dns_child_table = xcalloc(N, sizeof(dnsserver_t *)); - debug(34, 1, "dnsOpenServers: Starting %d 'dnsserver' processes\n", N); NDnsServersAlloc = 0; for (k = 0; k < N; k++) { dns_child_table[k] = xcalloc(1, sizeof(dnsserver_t)); if ((dnssocket = dnsOpenServer(prg)) < 0) { - debug(34, 1, "dnsOpenServers: WARNING: Cannot run 'dnsserver' process.\n"); - debug(34, 1, " Fallling back to the blocking version.\n"); + debug(34, 1, "dnsOpenServers: WARNING: Failed to start 'dnsserver' #%d.\n", k+1); dns_child_table[k]->flags &= ~DNS_FLAG_ALIVE; } else { debug(34, 4, "dnsOpenServers: FD %d connected to %s #%d.\n", @@ -263,9 +261,7 @@ dnsOpenServers(void) dns_child_table[k]->size = DNS_INBUF_SZ - 1; dns_child_table[k]->offset = 0; dns_child_table[k]->ip_inbuf = xcalloc(DNS_INBUF_SZ, 1); - /* update fd_stat */ - sprintf(fd_note_buf, "%s #%d", prg, dns_child_table[k]->id); fd_note(dns_child_table[k]->inpipe, fd_note_buf); commSetNonBlocking(dns_child_table[k]->inpipe); @@ -273,6 +269,9 @@ dnsOpenServers(void) NDnsServersAlloc++; } } + if (NDnsServersAlloc == 0) + fatal("Failed to start any dnsservers"); + debug(34, 1, "Started %d 'dnsserver' processes\n", NDnsServersAlloc); }