aboutsummaryrefslogtreecommitdiffstats
path: root/meta-networking
diff options
context:
space:
mode:
authorLi xin <lixin.fnst@cn.fujitsu.com>2015-06-17 11:53:05 +0800
committerJoe MacDonald <joe_macdonald@mentor.com>2015-07-06 15:27:51 -0400
commitf195ff612ba17dcd1bd8003b43cd2ecf513710c1 (patch)
tree86c051d001ae7cc93723fe8381fa65e6a87173f0 /meta-networking
parent420ad67ab8e92a82875632b3e07fa46be4f5fae7 (diff)
downloadmeta-openembedded-contrib-f195ff612ba17dcd1bd8003b43cd2ecf513710c1.tar.gz
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 <lixin.fnst@cn.fujitsu.com> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
Diffstat (limited to 'meta-networking')
-rw-r--r--meta-networking/recipes-protocols/quagga/files/bgpd.service4
-rw-r--r--meta-networking/recipes-protocols/quagga/files/ospf6d.service4
-rw-r--r--meta-networking/recipes-protocols/quagga/files/ospfd.service4
-rw-r--r--meta-networking/recipes-protocols/quagga/files/ripd.service4
-rw-r--r--meta-networking/recipes-protocols/quagga/files/ripngd.service4
-rw-r--r--meta-networking/recipes-protocols/quagga/files/zebra.service4
-rw-r--r--meta-networking/recipes-protocols/quagga/quagga.inc2
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
}