On 12/9/20 7:38 AM, Russell Coker wrote:
In systemd verision 247.1 (which is in Debian/Unstable now) systemd-udevd is a symlink to udevadm. In systemd version 241 (in Debian/Buster) it's not a symlink. The systemd changelog doesn't mention this change so I don't know exactly when it happened. type_transition init_t udevadm_exec_t:process udevadm_t; type_transition initrc_t udevadm_exec_t:process udevadm_t; type_transition sysadm_t udevadm_exec_t:process udevadm_t; type_transition consolekit_t udev_exec_t:process udev_t; type_transition devicekit_disk_t udev_exec_t:process udev_t; type_transition hald_t udev_exec_t:process udev_t; type_transition hotplug_t udev_exec_t:process udev_t; type_transition init_t udev_exec_t:process udev_t; type_transition initrc_t udev_exec_t:process udev_t; type_transition kernel_t udev_exec_t:process udev_t; type_transition virtd_t udev_exec_t:process udev_t; Above is a list of the relevant type_transition rules from refpolicy taken from git 3 days ago (there don't appear to be any udev changes since then). I think that the only thing to do is to have init_t and initrc_t run udevadm in the udev_t domain. Is it worth having a udevadm_t domain just for running it from sysadm_t or should we have that run as udev_t too?
The udevadm_t domain is much smaller than udev_t, and critically doesn't have all the device access udev_t has. Systemd merging the binaries into one doesn't necessarily mean the policy has to merge too.
-- Chris PeBenito