devfs does not support creation of regular files. So change the
authorEric Andersen <andersen@codepoet.org>
Thu, 3 May 2001 07:01:41 +0000 (07:01 -0000)
committerEric Andersen <andersen@codepoet.org>
Thu, 3 May 2001 07:01:41 +0000 (07:01 -0000)
test a bit so as to not possibly create a regular file.
 -Erik

sysklogd/syslogd.c
syslogd.c

index 9f5fc93b1f21745bc3130f6b8c57c4d0b1cc4c03..379efcf51fb3d24de7ea9fb7dadb26aadb52ce3d 100644 (file)
@@ -494,17 +494,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)))
index 9f5fc93b1f21745bc3130f6b8c57c4d0b1cc4c03..379efcf51fb3d24de7ea9fb7dadb26aadb52ce3d 100644 (file)
--- a/syslogd.c
+++ b/syslogd.c
@@ -494,17 +494,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)))