CVSROOT:        /cvs
Module name:    src
Changes by:     bl...@cvs.openbsd.org   2021/03/09 08:08:23

Modified files:
        sys/kern       : subr_log.c 
        sys/sys        : malloc.h 
        lib/libc/sys   : sendsyslog.2 
        usr.sbin/syslogd: syslogd.c 

Log message:
Early daemons like dhcpleased(8), slaacd(8), unwind(8), resolvd(8)
are started before syslogd(8).  This resulted in ugly sendsyslog(2)
dropped logs and the real message was lost.
Create a temporary stash for log messages within the kernel.  It
has a limited size of 100 messages, and each message is truncated
to 8192 bytes.  When the stash is exhausted, the well-known dropped
message is generated with a counter.  After syslogd(8) has setup
everything, it sends a debug line through libc to flush the kernel
stash.  Then syslogd receives all messages from the kernel before
the usual logs.
OK deraadt@ visa@

Reply via email to