From f195ff612ba17dcd1bd8003b43cd2ecf513710c1 Mon Sep 17 00:00:00 2001 From: Li xin Date: Wed, 17 Jun 2015 11:53:05 +0800 Subject: [PATCH] quagga: bug fix The bug is: after the service stopped,the pid file still exists. So modidy the service files. Signed-off-by: Li Xin Signed-off-by: Martin Jansa Signed-off-by: Joe MacDonald --- meta-networking/recipes-protocols/quagga/files/bgpd.service | 4 +++- meta-networking/recipes-protocols/quagga/files/ospf6d.service | 4 +++- meta-networking/recipes-protocols/quagga/files/ospfd.service | 4 +++- meta-networking/recipes-protocols/quagga/files/ripd.service | 4 +++- meta-networking/recipes-protocols/quagga/files/ripngd.service | 4 +++- meta-networking/recipes-protocols/quagga/files/zebra.service | 4 +++- meta-networking/recipes-protocols/quagga/quagga.inc | 2 ++ 7 files changed, 20 insertions(+), 6 deletions(-) diff --git a/meta-networking/recipes-protocols/quagga/files/bgpd.service b/meta-networking/recipes-protocols/quagga/files/bgpd.service index 164c81724c..76f9f61e73 100644 --- a/meta-networking/recipes-protocols/quagga/files/bgpd.service +++ b/meta-networking/recipes-protocols/quagga/files/bgpd.service @@ -7,7 +7,9 @@ ConditionPathExists=@SYSCONFDIR@/quagga/bgpd.conf [Service] Type=forking EnvironmentFile=-@SYSCONFDIR@/default/quagga -ExecStart=@SBINDIR@/bgpd -d $bgpd_options -f /etc/quagga/bgpd.conf +PIDFile=@localstatedir@/run/quagga/bgpd.pid +ExecStart=@SBINDIR@/bgpd -d $bgpd_options -f @SYSCONFDIR@/quagga/bgpd.conf +ExecStopPost=@base_bindir@/rm -rf @localstatedir@/run/quagga/bgpd.pid Restart=on-abort [Install] diff --git a/meta-networking/recipes-protocols/quagga/files/ospf6d.service b/meta-networking/recipes-protocols/quagga/files/ospf6d.service index 4b8ebf8026..a2e493b423 100644 --- a/meta-networking/recipes-protocols/quagga/files/ospf6d.service +++ b/meta-networking/recipes-protocols/quagga/files/ospf6d.service @@ -7,7 +7,9 @@ ConditionPathExists=@SYSCONFDIR@/quagga/ospf6d.conf [Service] Type=forking EnvironmentFile=-@SYSCONFDIR@/default/quagga -ExecStart=@SBINDIR@/ospf6d -d $ospf6d_options -f /etc/quagga/ospf6d.conf +PIDFile=@localstatedir@/run/quagga/ospf6d.pid +ExecStart=@SBINDIR@/ospf6d -d $ospf6d_options -f @SYSCONFDIR@/quagga/ospf6d.conf +ExecStopPost=@base_bindir@/rm -rf @localstatedir@/run/quagga/ospf6d.pid Restart=on-abort [Install] diff --git a/meta-networking/recipes-protocols/quagga/files/ospfd.service b/meta-networking/recipes-protocols/quagga/files/ospfd.service index f9f5031b4b..0c62cbce58 100644 --- a/meta-networking/recipes-protocols/quagga/files/ospfd.service +++ b/meta-networking/recipes-protocols/quagga/files/ospfd.service @@ -7,7 +7,9 @@ ConditionPathExists=@SYSCONFDIR@/quagga/ospfd.conf [Service] Type=forking EnvironmentFile=-@SYSCONFDIR@/default/quagga -ExecStart=@SBINDIR@/ospfd -d $ospfd_options -f /etc/quagga/ospfd.conf +PIDFile=@localstatedir@/run/quagga/ospfd.pid +ExecStart=@SBINDIR@/ospfd -d $ospfd_options -f @SYSCONFDIR@/quagga/ospfd.conf +ExecStopPost=@base_bindir@/rm -rf @localstatedir@/run/quagga/ospfd.pid Restart=on-abort [Install] diff --git a/meta-networking/recipes-protocols/quagga/files/ripd.service b/meta-networking/recipes-protocols/quagga/files/ripd.service index 5dfd28b3ad..1d20389e8b 100644 --- a/meta-networking/recipes-protocols/quagga/files/ripd.service +++ b/meta-networking/recipes-protocols/quagga/files/ripd.service @@ -7,7 +7,9 @@ ConditionPathExists=@SYSCONFDIR@/quagga/ripd.conf [Service] Type=forking EnvironmentFile=-@SYSCONFDIR@/default/quagga -ExecStart=@SBINDIR@/ripd -d $ripd_options -f /etc/quagga/ripd.conf +PIDFile=@localstatedir@/run/quagga/ripd.pid +ExecStart=@SBINDIR@/ripd -d $ripd_options -f @SYSCONFDIR@/quagga/ripd.conf +ExecStopPost=@base_bindir@/rm -rf @localstatedir@/run/quagga/ripd.pid Restart=on-abort [Install] diff --git a/meta-networking/recipes-protocols/quagga/files/ripngd.service b/meta-networking/recipes-protocols/quagga/files/ripngd.service index 72562d5f7c..0355ad12a4 100644 --- a/meta-networking/recipes-protocols/quagga/files/ripngd.service +++ b/meta-networking/recipes-protocols/quagga/files/ripngd.service @@ -7,7 +7,9 @@ ConditionPathExists=@SYSCONFDIR@/quagga/ripngd.conf [Service] Type=forking EnvironmentFile=-@SYSCONFDIR@/default/quagga -ExecStart=@SBINDIR@/ripngd -d $ripngd_options -f /etc/quagga/ripngd.conf +PIDFile=@localstatedir@/run/quagga/ripngd.pid +ExecStart=@SBINDIR@/ripngd -d $ripngd_options -f @SYSCONFDIR@/quagga/ripngd.conf +ExecStopPost=@base_bindir@/rm -rf @localstatedir@/run/quagga/ripngd.pid Restart=on-abort [Install] diff --git a/meta-networking/recipes-protocols/quagga/files/zebra.service b/meta-networking/recipes-protocols/quagga/files/zebra.service index afdd9e52db..e4fb6c808d 100644 --- a/meta-networking/recipes-protocols/quagga/files/zebra.service +++ b/meta-networking/recipes-protocols/quagga/files/zebra.service @@ -7,8 +7,10 @@ ConditionPathExists=@SYSCONFDIR@/quagga/zebra.conf [Service] Type=forking EnvironmentFile=-@SYSCONFDIR@/default/quagga +PIDFile=@localstatedir@/run/quagga/zebra.pid ExecStartPre=@BASE_SBINDIR@/ip route flush proto zebra -ExecStart=@SBINDIR@/zebra -d $zebra_options -f /etc/quagga/zebra.conf +ExecStart=@SBINDIR@/zebra -d $zebra_options -f @SYSCONFDIR@/quagga/zebra.conf +ExecStopPost=@base_bindir@/rm -rf @localstatedir@/run/quagga/zebra.pid Restart=on-abort [Install] diff --git a/meta-networking/recipes-protocols/quagga/quagga.inc b/meta-networking/recipes-protocols/quagga/quagga.inc index 071e8d4483..2f0b515ca6 100644 --- a/meta-networking/recipes-protocols/quagga/quagga.inc +++ b/meta-networking/recipes-protocols/quagga/quagga.inc @@ -145,6 +145,8 @@ do_install () { sed -e 's,@BASE_SBINDIR@,${base_sbindir},g' \ -e 's,@SYSCONFDIR@,${sysconfdir},g' \ -e 's,@SBINDIR@,${sbindir},g' \ + -e 's,@base_bindir@,${base_bindir},g' \ + -e 's,@localstatedir@,${localstatedir},g' \ -i ${D}${systemd_unitdir}/system/*.service }