add LOG_NOWAIT, correct console logging
authorMike Karels <karels@ucbvax.Berkeley.EDU>
Fri, 25 Apr 1986 00:21:47 +0000 (16:21 -0800)
committerMike Karels <karels@ucbvax.Berkeley.EDU>
Fri, 25 Apr 1986 00:21:47 +0000 (16:21 -0800)
SCCS-vsn: lib/libc/gen/syslog.c 5.8

usr/src/lib/libc/gen/syslog.c

index c2b77da..34e0492 100644 (file)
@@ -5,7 +5,7 @@
  */
 
 #if defined(LIBC_SCCS) && !defined(lint)
  */
 
 #if defined(LIBC_SCCS) && !defined(lint)
-static char sccsid[] = "@(#)syslog.c   5.7 (Berkeley) %G%";
+static char sccsid[] = "@(#)syslog.c   5.8 (Berkeley) %G%";
 #endif LIBC_SCCS and not lint
 
 /*
 #endif LIBC_SCCS and not lint
 
 /*
@@ -122,7 +122,7 @@ syslog(pri, fmt, p0, p1, p2, p3, p4)
        /* output the message to the local logger */
        if (sendto(LogFile, outline, c, 0, &SyslogAddr, sizeof SyslogAddr) >= 0)
                return;
        /* output the message to the local logger */
        if (sendto(LogFile, outline, c, 0, &SyslogAddr, sizeof SyslogAddr) >= 0)
                return;
-       if (!(LogStat & LOG_CONS) && (pri & LOG_PRIMASK) <= LOG_ERR)
+       if (!(LogStat & LOG_CONS))
                return;
 
        /* output the message to the console */
                return;
 
        /* output the message to the console */
@@ -137,12 +137,13 @@ syslog(pri, fmt, p0, p1, p2, p3, p4)
                alarm(0);
                strcat(o, "\r");
                o = index(outline, '>') + 1;
                alarm(0);
                strcat(o, "\r");
                o = index(outline, '>') + 1;
-               write(LogFile, outline, c + 1 - (o - outline));
+               write(LogFile, o, c + 1 - (o - outline));
                close(LogFile);
                exit(0);
        }
                close(LogFile);
                exit(0);
        }
-       while ((c = wait((int *)0)) > 0 && c != pid)
-               ;
+       if (!(LogStat & LOG_NOWAIT))
+               while ((c = wait((int *)0)) > 0 && c != pid)
+                       ;
 }
 
 /*
 }
 
 /*