|Summary:||dns/bind911, security/trousers: rcorder: Circular dependency|
|Product:||Ports & Packages||Reporter:||Tatsuki Makino <tatsuki_makino>|
|Component:||Individual Port(s)||Assignee:||Hiroki Sato <hrs>|
|Severity:||Affects Only Me||CC:||alfred, hrs, jcfyecrayz, mat, w.schwarzenfeld, woodsb02|
Description Tatsuki Makino 2017-04-18 03:03:22 UTC
rc.d/tcsd requires SERVERS and asks to activate before named. rc.d/named asks to activate before SERVERS.
Comment 1 Walter Schwarzenfeld 2018-01-15 22:09:18 UTC
tcsd.in shows # PROVIDE: tcsd # REQUIRE: SERVERS tpmd # BEFORE: named hastd kerberos # KEYWORD: shutdown this seems solved. I think we could close.
Comment 2 Tatsuki Makino 2018-01-16 00:01:39 UTC
(In reply to w.schwarzenfeld from comment #1) dns/bind911 has START_LATE option. I installed the option off. When executing rcorder /etc/rc.d/* /usr/local/etc/rc.d/* under that condition, I get a message "rcorder: Circular dependency on provision `SERVERS' in file `/usr/local/etc/rc.d/tcsd'.". There are more "rcorder: Circular dependency ..." messages now, so I don't know anymore :)
Comment 3 Walter Schwarzenfeld 2018-01-16 00:18:55 UTC
You are right: usr/local/etc/rc.d/915resolution rcorder: Circular dependency on provision `SERVERS' in file `/usr/local/etc/rc.d/tpmd'. /usr/local/etc/rc.d/tpmd rcorder: Circular dependency on provision `SERVERS' in file `/usr/local/etc/rc.d/tcsd'.
Comment 4 John Hein 2018-01-16 01:00:17 UTC
Created attachment 189778 [details] [patch] fix rc ordering for tpmd & tcsd Here's a patch to fix ordering problems in the rc.d scripts for security/trousers (tcsd) and emulators/tpm-emulator (tpmd). It also replaces the rc.d dependency on kerberos to be kdc instead (rc.d/kerberos was renamed to rc.d/kdc in FreeBSD 10.1).
Comment 5 John Hein 2018-01-16 01:51:42 UTC
Created attachment 189780 [details] [patch] fix rc ordering for tpmd & tcsd [v2] v2: Remove accidental cruft from patch. No substantial change vs. v1.
Comment 6 John Hein 2018-01-16 02:52:58 UTC
(In reply to John Hein from comment #5) Before this fix (attachment 189780 [details]), rcorder shows: % rcorder /usr/local/etc/rc.d/tcsd /usr/local/etc/rc.d/tpmd /usr/local/etc/rc.d/named /etc/rc.d/* | & grep rcorder rcorder: file `/usr/local/etc/rc.d/tcsd' is before unknown provision `kerberos' rcorder: Circular dependency on provision `SERVERS' in file `/usr/local/etc/rc.d/tpmd'. rcorder: Circular dependency on provision `SERVERS' in file `/usr/local/etc/rc.d/tcsd'.
Comment 7 Alfred Perlstein 2018-01-16 05:29:34 UTC
Should there be a post-install or some other step during portlint or such to detect this?
Comment 8 Mathieu Arnold 2018-01-16 09:59:53 UTC
They are two different ports, that have absolutely no relation, there cannot be any automatic way to detect this. The trousers probably need to loose the SERVERS requirement.
Comment 9 Ben Woods 2018-01-16 10:03:44 UTC
Awaiting Hiroki's approval of patch as maintainer.
Comment 10 Walter Schwarzenfeld 2018-01-16 10:08:34 UTC
hrs (Hiroki) seems inactive, should move it back to the pool? (I see same PR belonging to him are long time open, some since 2014).
Comment 12 John Hein 2018-01-25 21:51:06 UTC
(In reply to Alfred Perlstein from comment #7) Re: detecting this at port install time. I think you could do something like: rcorder /etc/rc.d/* /usr/local/etc/rc.d/* > rcorder-before-install install rc.d script rcorder /etc/rc.d/* /usr/local/etc/rc.d/* > rcorder-after-install Compare before & after, and warn about any new rcorder errors. I don't have a patch, but it doesn't seem too hard to be able to add something to QA to help with this.