logger (LOG_ERR, "fork: %s", strerror (errno));
}
-static int make_resolv (char *ifname, dhcp_t *dhcp, int wait)
+static int make_resolv (char *ifname, dhcp_t *dhcp)
{
FILE *f;
struct stat buf;
char resolvconf[PATH_MAX];
address_t *address;
+ memset (&resolvconf, 0, sizeof (resolvconf));
if (stat ("/sbin/resolvconf", &buf) == 0)
{
logger (LOG_DEBUG, "sending DNS information to resolvconf");
}
else
{
+ logger (LOG_DEBUG, "writing "RESOLVFILE);
if (! (f = fopen(RESOLVFILE, "w")))
logger (LOG_ERR, "fopen `%s': %s", RESOLVFILE, strerror (errno));
}
address_t *address;
char *a;
+ logger (LOG_DEBUG, "writing "NTPFILE);
if (! (f = fopen(NTPFILE, "w")))
{
logger (LOG_ERR, "fopen `%s': %s", NTPFILE, strerror (errno));
address_t *address;
char prefix[256] = {0};
+ logger (LOG_DEBUG, "writing "NISFILE);
if (! (f = fopen(NISFILE, "w")))
{
logger (LOG_ERR, "fopen `%s': %s", NISFILE, strerror (errno));
route_t *route;
address_t *address;
+ logger (LOG_DEBUG, "writing %s", iface->infofile);
if ((f = fopen (iface->infofile, "w")) == NULL)
{
logger (LOG_ERR, "fopen `%s': %s", iface->infofile, strerror (errno));
}
if (options->dodns && dhcp->dnsservers)
- make_resolv(iface->name, dhcp, (options->dohostname && !dhcp->hostname));
+ make_resolv(iface->name, dhcp);
+ else
+ logger (LOG_DEBUG, "no dns information to write");
if (options->dontp && dhcp->ntpservers)
make_ntp(iface->name, dhcp);
make_nis(iface->name, dhcp);
/* Now we have made a resolv.conf we can obtain a hostname if we need one */
- if (options->dohostname && !dhcp->hostname)
+ if (options->dohostname && ! dhcp->hostname)
{
he = gethostbyaddr (inet_ntoa (dhcp->address),
sizeof (struct in_addr), AF_INET);
gethostname (curhostname, sizeof (curhostname));
- if (options->dohostname || !strlen (curhostname)
- || !strcmp (curhostname, "(none)") || !strcmp (curhostname, "localhost"))
+ if (options->dohostname
+ || strlen (curhostname) == 0
+ || strcmp (curhostname, "(none)") == 0
+ || strcmp (curhostname, "localhost") == 0)
{
if (dhcp->hostname)
strcpy ((char *) newhostname, dhcp->hostname);
sethostname ((char *) newhostname, strlen ((char *) newhostname));
- logger (LOG_INFO, "setting hostname to %s", newhostname);
+ logger (LOG_INFO, "setting hostname to `%s'", newhostname);
}
write_info (iface, dhcp);