Page MenuHomeFreeBSD

syslogd: Do not immediately terminate piped processes on restart
Needs ReviewPublic

Authored by jfree on Tue, Dec 23, 2:55 AM.
Tags
None
Referenced Files
Unknown Object (File)
Fri, Dec 26, 3:16 AM
Unknown Object (File)
Thu, Dec 25, 10:09 PM
Unknown Object (File)
Wed, Dec 24, 4:52 PM
Unknown Object (File)
Wed, Dec 24, 10:06 AM
Unknown Object (File)
Wed, Dec 24, 7:39 AM
Subscribers

Details

Reviewers
markj
Group Reviewers
capsicum
Summary

Pipe actions spawn processes based on the command provided in the
syslogd configuration file. When a HUP signal is received, enter
these processes into the deadq instead of immediately killing them.
This matches the behavior of syslogd prior to it being Capsicumized.

Fixes: d2d180fb7736

Test Plan

Using test provided by bug report:
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=291557

$ logger -p local2.warning -t logger message1
$ killall -1 syslogd
$ logger -p local2.warning -t logger message2
$ killall -1 syslogd

$ tail /var/log/messages
Dec 22 06:44:54 CURRENT logger[6027]: message1
Dec 22 06:44:55 CURRENT pipe-test[6032]: 6028 START
Dec 22 06:44:55 CURRENT pipe-test[6036]: 6028 Dec 22 06:44:54 CURRENT logger[6027]: message1
Dec 22 06:44:56 CURRENT pipe-test[6041]: 6028 END
Dec 22 06:44:59 CURRENT logger[6045]: message2
Dec 22 06:44:59 CURRENT pipe-test[6050]: 6046 START
Dec 22 06:44:59 CURRENT pipe-test[6054]: 6046 Dec 22 06:44:59 CURRENT logger[6045]: message2
Dec 22 06:45:02 CURRENT pipe-test[6061]: 6046 END

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Skipped
Unit
Tests Skipped
Build Status
Buildable 69445
Build 66328: arc lint + arc unit