From: Tom Gundersen Date: Fri, 15 May 2015 20:59:24 +0000 (+0200) Subject: units: make networkd pull in its own .busname unit X-Git-Tag: v226.4~1^2~382 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=commitdiff_plain;h=d2febf7f92eba0919773ce93d80df50fd3faeb5d;hp=24166fdaeee2e0e48cfaf0a3228581c3f11f5627 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 --- diff --git a/units/systemd-networkd.service.m4.in b/units/systemd-networkd.service.m4.in new file mode 100644 index 000000000..7f216f331 --- /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