Unveil pflogd(8). Similiar to florian@'s recent changes to ifconfig(8),
authorbrynet <brynet@openbsd.org>
Sun, 26 Aug 2018 18:26:51 +0000 (18:26 +0000)
committerbrynet <brynet@openbsd.org>
Sun, 26 Aug 2018 18:26:51 +0000 (18:26 +0000)
commit8bdd01ea2b6350399c70d2a32bcce6cedfed500f
treeedb6d892b4b34487f2d5afb09aff0f01274671e2
parent4b2941040aa61d85cab3466eb80e5b1763fe98b4
Unveil pflogd(8). Similiar to florian@'s recent changes to ifconfig(8),
the priviledged parent cannot be pledged due to certain ioctls, but we
can use unveil(2) to lock down its access to the filesystem.

To be able to use hostnames/dns in tcpdump-like filter expressions,
we unveil /etc/{resolv.conf,hosts,services} "r", kept in sync with the
kernel bypass for pledge("dns")

Additionally, we need to unveil /dev/bpf "r" and the output log file
"rwc".

The unpriviledged child is pledged "stdio recvfd" and thus does not need
any unveils.

With feedback/testing from florian@, deraadt@

ok florian@ deraadt@
sbin/pflogd/privsep.c