Updates from both Vladimir and Larry
[oweals/busybox.git] / syslogd.c
index 9f5fc93b1f21745bc3130f6b8c57c4d0b1cc4c03..6be51d7dc66642f12cc1d2c974b8f68be53db409 100644 (file)
--- a/syslogd.c
+++ b/syslogd.c
@@ -372,7 +372,7 @@ static const int IOV_COUNT = 2;
 
 static void quit_signal(int sig)
 {
-       logMessage(0, "System log daemon exiting.");
+       logMessage(LOG_SYSLOG | LOG_INFO, "System log daemon exiting.");
        unlink(lfile);
 #ifdef BB_FEATURE_IPC_SYSLOG
        ipcsyslog_cleanup();
@@ -450,11 +450,7 @@ static void init_RemoteLog (void){
     error_msg_and_die("syslogd: cannot create socket");
   }
 
-  hostinfo = (struct hostent *) gethostbyname(RemoteHost);
-
-  if (!hostinfo) {
-    error_msg_and_die("syslogd: cannot resolve remote host name [%s]", RemoteHost);
-  }
+  hostinfo = xgethostbyname(RemoteHost);
 
   remoteaddr.sin_family = AF_INET;
   remoteaddr.sin_addr = *(struct in_addr *) *hostinfo->h_addr_list;
@@ -494,17 +490,14 @@ static void doSyslogd (void)
        alarm (MarkInterval);
 
        /* Create the syslog file so realpath() can work. */
-       close (open (_PATH_LOG, O_RDWR | O_CREAT, 0644));
-       if (realpath (_PATH_LOG, lfile) == NULL)
-               perror_msg_and_die ("Could not resolve path to " _PATH_LOG);
-
-       unlink (lfile);
+       if (realpath (_PATH_LOG, lfile) != NULL)
+               unlink (lfile);
 
        memset (&sunx, 0, sizeof (sunx));
        sunx.sun_family = AF_UNIX;
        strncpy (sunx.sun_path, lfile, sizeof (sunx.sun_path));
        if ((sock_fd = socket (AF_UNIX, SOCK_STREAM, 0)) < 0)
-               perror_msg_and_die ("Couldn't obtain descriptor for socket " _PATH_LOG);
+               perror_msg_and_die ("Couldn't get file descriptor for socket " _PATH_LOG);
 
        addrLength = sizeof (sunx.sun_family) + strlen (sunx.sun_path);
        if ((bind (sock_fd, (struct sockaddr *) &sunx, addrLength)) || (listen (sock_fd, 5)))
@@ -528,7 +521,7 @@ static void doSyslogd (void)
         }
         #endif
 
-       logMessage (0, "syslogd started: " BB_BANNER);
+       logMessage (LOG_SYSLOG | LOG_INFO, "syslogd started: " BB_BANNER);
 
        for (;;) {