[Midnightbsd-cvs] [MidnightBSD/src] 29b641: syslogd: import the FreeBSD stable/15 version
Lucas Holt
noreply at github.com
Tue Sep 29 16:40:37 EDT 2026
Branch: refs/heads/syslogd-freebsd15
Home: https://github.com/MidnightBSD/src
Commit: 29b641e12140038d6600cdd9d6a04e55b840d535
https://github.com/MidnightBSD/src/commit/29b641e12140038d6600cdd9d6a04e55b840d535
Author: Lucas Holt <luke at foolishgames.com>
Date: 2026-09-29 (Tue, 29 Sep 2026)
Changed paths:
M libexec/talkd/announce.c
M usr.bin/wall/ttymsg.c
M usr.bin/wall/ttymsg.h
M usr.bin/wall/wall.c
M usr.sbin/syslogd/Makefile
M usr.sbin/syslogd/Makefile.depend
M usr.sbin/syslogd/pathnames.h
M usr.sbin/syslogd/syslog.conf.5
M usr.sbin/syslogd/syslogd.8
M usr.sbin/syslogd/syslogd.c
A usr.sbin/syslogd/syslogd.h
A usr.sbin/syslogd/syslogd_cap.c
A usr.sbin/syslogd/syslogd_cap.h
A usr.sbin/syslogd/syslogd_cap_config.c
A usr.sbin/syslogd/syslogd_cap_log.c
M usr.sbin/syslogd/tests/Makefile
A usr.sbin/syslogd/tests/syslogd_basic_format_test.sh
A usr.sbin/syslogd/tests/syslogd_format_test_common.sh
A usr.sbin/syslogd/tests/syslogd_forwarded_format_test.sh
A usr.sbin/syslogd/tests/syslogd_relayed_format_test.sh
M usr.sbin/syslogd/tests/syslogd_test.sh
A usr.sbin/syslogd/tests/syslogd_test_common.sh
Log Message:
-----------
syslogd: import the FreeBSD stable/15 version
Replace our FreeBSD 13-era syslogd with the FreeBSD stable/15 code.
This brings the process-descriptor based pipe handling, libcasper
sandboxing (capability mode when MK_CASPER is enabled), the
rfc3164-strict output format, graceful termination of pipe children,
forwarding socket fixes, and the expanded regression test suite.
It includes the fix for FreeBSD-EN-26:23.syslogd, which stops syslogd
from leaking a process descriptor for each pipe destination on every
SIGHUP reload, and the test that catches that regression.
Local deviations from upstream:
- socksetup(): the upstream code sets unix socket permissions with
fchmod(2) before bind(2). Our kernel does not yet support fchmod on
unix sockets (FreeBSD bfd03046d187), so fall back to chmod(2) on the
bound path when fchmod fails with EINVAL. Without this syslogd
cannot create its local sockets and refuses to start.
- tests/Makefile: Kyua 0.13 does not know the "jail" execenv used
upstream, so the tests are marked is_exclusive instead, as FreeBSD
did before the execenv conversion.
- Makefile: keep the ftpd syslog.d fragment, which FreeBSD dropped
along with ftpd(8).
ttymsg() changed signature upstream (returns int, takes a bool that
controls the "messages disabled" check), so usr.bin/wall/ttymsg.[ch]
are updated to match and the callers in wall(1) and ntalkd(8) are
adjusted. Our local wall.c overflow fix is retained.
Built syslogd (with and without WITH_CASPER), wall and ntalkd on
amd64. Ran the syslogd Kyua tests that do not need jails or extra
interfaces against the new binary: 14/14 pass, including
pipe_action_reload, which checks for leaked process descriptors.
AI-Assisted-by: Claude Fable 5.1
Co-Authored-By: Claude Fable 5.1 <noreply at anthropic.com>
Signed-off-by: Lucas Holt <luke at foolishgames.com>
To unsubscribe from these emails, change your notification settings at https://github.com/MidnightBSD/src/settings/notifications
More information about the Midnightbsd-cvs
mailing list