summaryrefslogtreecommitdiffstats
path: root/meta/recipes-core/systemd/systemd/00-hostnamed-network-user.conf
diff options
context:
space:
mode:
authorLuca Boccassi <luca.boccassi@microsoft.com>2021-02-18 18:36:20 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2021-02-19 11:17:11 +0000
commit3dc37c12c17d5bb6d4701a425a4f79f6e31784ee (patch)
treea4b56ec4683cee0413d9f46fc9a4466694a44eb8 /meta/recipes-core/systemd/systemd/00-hostnamed-network-user.conf
parent1827be4a19b5928819da4be1cd0406463012f9ea (diff)
downloadpoky-3dc37c12c17d5bb6d4701a425a4f79f6e31784ee.tar.gz
systemd: add hostname fallback when polkit is not available
When polkit is not available, networkd will not have permissions to call hostnamed's dbus methods, as it runs without privileges. To solve this, when building without polkit, make a new PACKAGECONFIG 'polkit_hostnamed_fallback' available which changes hostnamed so that it runs as the 'systemd-network' user, the same as networkd, so that the authorization works (and also with CAP_SYS_ADMIN since it loses root). Also run it with a separate 'systemd-hostname' group which also owns the bus, to avoid giving the 'systemd-network' additional privileges. (From OE-Core rev: 07a8f1629662d4d66d056d95be3cb9e749242274) Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-core/systemd/systemd/00-hostnamed-network-user.conf')
-rw-r--r--meta/recipes-core/systemd/systemd/00-hostnamed-network-user.conf6
1 files changed, 6 insertions, 0 deletions
diff --git a/meta/recipes-core/systemd/systemd/00-hostnamed-network-user.conf b/meta/recipes-core/systemd/systemd/00-hostnamed-network-user.conf
new file mode 100644
index 0000000000..6b224ba9b9
--- /dev/null
+++ b/meta/recipes-core/systemd/systemd/00-hostnamed-network-user.conf
@@ -0,0 +1,6 @@
1[Service]
2# By running with these options instead of root, networkd is allowed to request
3# a hostname change via DBUS when policykit is not present
4User=systemd-network
5Group=systemd-hostname
6AmbientCapabilities=CAP_SYS_ADMIN