Contributed by Peter N. M. Hansteen on from the logged, separately dept.
syslogd(8) system logger has already for a while now fork(2)ed the
privileged from the non-privileged parts.
Now Alexander Bluhm (bluhm@) decided it's time to split these parts into separate binaries in order to provide even better separation. The final commit message reads,
List: openbsd-cvs Subject: CVS: cvs.openbsd.org: src From: Alexander Bluhm <bluhm () openbsd ! org> Date: 2026-06-11 15:41:33 CVSROOT: /cvs Module name: src Changes by: bluhm@cvs.openbsd.org 2026/06/11 09:41:33 Modified files: usr.sbin/syslogd: Makefile privsep.c syslogd.c syslogd.h etc/rc.d : syslogd Added files: usr.sbin/syslogd: Makefile.inc parent.c usr.sbin/syslogd/parent: Makefile usr.sbin/syslogd/syslogd: Makefile Log message: Provide a separate executable file for syslogd parent.
syslogd(8) forks and execs its parent process to keep privileged parts separated. This parent process can be easily implemented as a separate program. It gets its own main() and minimal debug logging functions. The splitted parent process image is smaller, especially without additional libs. Use additional directories to build both parts. The rcctl script has to be adopted, as the parent process has a different name. OK deraadt@
The code should be in snapshots by the time you read this. So please fire up that sysupgrade -s if you're already on snapshots!
