summaryrefslogtreecommitdiff
path: root/src/network/systemd-networkd.pkla
diff options
context:
space:
mode:
authorMartin Pitt <martin.pitt@ubuntu.com>2016-11-22 08:05:18 +0100
committerMartin Pitt <martin.pitt@ubuntu.com>2016-11-23 16:32:06 +0100
commit2c99aba7260a402e8f81d85aab12ce25d3d8786a (patch)
tree16caebc4f668f07ee986db11a418520168ef5f24 /src/network/systemd-networkd.pkla
parent59eb33e0fec9b1502a9089561dcfda3f16a1816e (diff)
networkd: allow networkd to set the timezone in timedated
systemd-networkd runs as user "systemd-network" and thus is not privileged to set the timezone acquired from DHCP: systemd-networkd[4167]: test_eth42: Could not set timezone: Interactive authentication required. Similarly to commit e8c0de912, add a polkit rule to grant org.freedesktop.timedate1.set-timezone to the "systemd-network" system user. Move the polkit rules from src/hostname/ to src/network/ to avoid too many small distributed policy snippets (there might be more in the future), as it's easier to specify the privileges for a particular subject in this case. Add NetworkdClientTest.test_dhcp_timezone() test case to verify this (for all people except those in Pacific/Honolulu, there the test doesn't prove anything -- sorry ☺ ).
Diffstat (limited to 'src/network/systemd-networkd.pkla')
-rw-r--r--src/network/systemd-networkd.pkla4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/network/systemd-networkd.pkla b/src/network/systemd-networkd.pkla
new file mode 100644
index 0000000000..fb257d933b
--- /dev/null
+++ b/src/network/systemd-networkd.pkla
@@ -0,0 +1,4 @@
+[Allow systemd-networkd to set timezone and transient hostname]
+Identity=unix-user:systemd-network
+Action=org.freedesktop.hostname1.set-hostname;org.freedesktop.timedate1.set-timezone;
+ResultAny=yes