-
Notifications
You must be signed in to change notification settings - Fork 45
Ripping out support for ancient protocols
Kartik Agaram edited this page Dec 30, 2016
·
3 revisions
At the static initialization of the domains
global, commenting out:
- Everything but
inetdomain
: leads to this error:
pfctl: getifaddrs: Protocol not available.
-
Everything but
inetdomain
andpfkeydomain
: same error as above. -
Just
mplsdomain
andpfkeydomain
: works fine. -
mplsdomain
,pfkeydomain
andinet6domain
: boot fails without the earlier "Protocol not available" error. Page fault inside functionin6_update_ifa
. -
mplsdomain
,pfkeydomain
androutedomain
: errors on boot, but eventually gets to login screen:
route: socket: Protocol not supported
route: socket: Protocol not supported
pfctl: getifaddrs: Protocol not available
starting early daemons: syslogd pflogd(failed) ntpd.
..
starting network daemons: sshd smtdpd(failed) sndiod.
starting local daemons: cron.
No ssh access.
-
mplsdomain
,pfkeydomain
andunixdomain
: errors on boot, but eventually gets to login screen:
socketpair: Protocol not supported
starting early daemons: syslogd(failed) pflogd(failed) ntpd(failed).
..
starting network daemons: sshd smtdpd(failed) sndiod(failed).
starting local daemons: cron(failed).
No ssh access.
- (one final lark)
mplsdomain
,pfkeydomain
andinetdomain
(ssh access not expected): boot fails. Page fault inside functionin_pcballoc
.
So it looks like we require, at least for now:
-
inet6domain
(at least for an explicit setup call) inetdomain
-
unixdomain
(for syslogd, pflogd, ntpd, smtpd, sndiod, cron, ssh access) -
routedomain
(for pflogd, smtpd, ssh access)
Easily disabled are just:
mplsdomain
pfkeydomain
Call graph during boot sequence:
in6_update_ifa
-
in6_ifattach_loopback
andin6_ifattach_linklocal
(fromnetinet6/in6_ifattach.c
)-
in6_ifattach
-
ifioctl
andif_up
(fromnet/if.c
)
-
-
-
in6_control
(fromnetinet6/in6.c
)-
udp_usrreq
(fromnetinet/udp_usrreq.c
)
-
Disabling pflogd is done through rcctl which in turn updates /etc/rc.conf
.