summaryrefslogtreecommitdiff
path: root/units/systemd-networkd.service.m4.in
diff options
context:
space:
mode:
authorTom Gundersen <teg@jklm.no>2015-05-15 22:59:24 +0200
committerTom Gundersen <teg@jklm.no>2015-05-15 22:59:43 +0200
commitb5acb956d1ceca70e1fc7546534b43b7d81322cc (patch)
tree99a33c3b7a2a4b774d9c9732236f30ad487daeae /units/systemd-networkd.service.m4.in
parenta542c4dc43db906b30ea6b2b1192cf87b01f572e (diff)
units: make networkd pull in its own .busname unit
The daemon requires the busname unit to operate (on kdbus systems), since it contains the policy that allows it to acquire its service name. This fixes https://bugs.freedesktop.org/show_bug.cgi?id=90287
Diffstat (limited to 'units/systemd-networkd.service.m4.in')
-rw-r--r--units/systemd-networkd.service.m4.in39
1 files changed, 39 insertions, 0 deletions
diff --git a/units/systemd-networkd.service.m4.in b/units/systemd-networkd.service.m4.in
new file mode 100644
index 0000000000..7f216f331c
--- /dev/null
+++ b/units/systemd-networkd.service.m4.in
@@ -0,0 +1,39 @@
+# This file is part of systemd.
+#
+# systemd is free software; you can redistribute it and/or modify it
+# under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2.1 of the License, or
+# (at your option) any later version.
+
+[Unit]
+Description=Network Service
+Documentation=man:systemd-networkd.service(8)
+ConditionCapability=CAP_NET_ADMIN
+DefaultDependencies=no
+# dbus.service can be dropped once on kdbus, and systemd-udevd.service can be
+# dropped once tuntap is moved to netlink
+After=systemd-udevd.service dbus.service network-pre.target systemd-sysusers.service
+Before=network.target multi-user.target shutdown.target
+Conflicts=shutdown.target
+Wants=network.target
+
+m4_ifdef(`ENABLE_KDBUS',
+# On kdbus systems we pull in the busname explicitly, because it
+# carries policy that allows the daemon to acquire its name.
+Wants=org.freedesktop.network1.busname
+After=org.freedesktop.network1.busname
+
+)m4_dnl
+[Service]
+Type=notify
+Restart=on-failure
+RestartSec=0
+ExecStart=@rootlibexecdir@/systemd-networkd
+CapabilityBoundingSet=CAP_NET_ADMIN CAP_NET_BIND_SERVICE CAP_NET_BROADCAST CAP_NET_RAW CAP_SETUID CAP_SETGID CAP_SETPCAP CAP_CHOWN CAP_DAC_OVERRIDE CAP_FOWNER
+ProtectSystem=full
+ProtectHome=yes
+WatchdogSec=1min
+
+[Install]
+WantedBy=multi-user.target
+Also=systemd-networkd.socket