make recommended system service naming mandatory
Submitted by Simon McVittie
Assigned to D-Bus Maintainers
Description
dbus-daemon currently has the following unintended behaviour for system services whose filenames are not the canonical name (the well-known name + ".service"):
- Parse whichever service came first in readdir() order (might be the canonical name, or any other name[1]).
- Silently ignore any others.
- If the one that got parsed has a SystemdService set, use that for activation.
- If the one that got parsed does not have a SystemdService set, use the setuid helper for activation - but the setuid helper will load the file that has the canonical name instead (!), or if there is none, activation will fail.
When Bug #99825 lands, [1] will at least become a warning.
For the development branch, I think we should consider tightening this to: if the name is not canonical, just fail to load it. After Bug #99825, this would be easy to do.
Version: git master