CVSROOT: /cvs
Module name: src
Changes by: [email protected] 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@