Skip to contentSkip to conversation

xinetd: add systemd unit file

PATCH New Chong Lu 1 participant 2 messages Oct 17, 2014

lore
Share & tools
lore

Chong Lu

author
#0 lore raw

v2 cover xinetd: add systemd unit file

Change since v1:
use ${sysconfdir} variables for /etc, instead of hard-coding

The following changes since commit ccf5a4d2342c4fd40e4e0b332ea7e34e0bf175d4:

build-appliance-image: Update to dizzy head revision (2014-10-11 08:11:17 +0100)

are available in the git repository at:

git://git.pokylinux.org/poky-contrib chonglu/xinetd
http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=chonglu/xinetd

Chong Lu (1):
xinetd: add systemd unit file

 meta/recipes-extended/xinetd/xinetd/xinetd.service | 13 +++++++++++++
 meta/recipes-extended/xinetd/xinetd_2.3.15.bb      | 18 +++++++++++++++++-
 2 files changed, 30 insertions(+), 1 deletion(-)
 create mode 100644 meta/recipes-extended/xinetd/xinetd/xinetd.service
Signature · 1 line
1.9.1
author
#1 lore raw

PATCH v2 1/1 xinetd: add systemd unit file

Add systemd unit file for xinetd.

---
 meta/recipes-extended/xinetd/xinetd/xinetd.service | 13 +++++++++++++
 meta/recipes-extended/xinetd/xinetd_2.3.15.bb      | 18 +++++++++++++++++-
 2 files changed, 30 insertions(+), 1 deletion(-)
 create mode 100644 meta/recipes-extended/xinetd/xinetd/xinetd.service
meta/recipes-extended/xinetd/xinetd/xinetd.service new file +13 -0
new file mode 100644
index 0000000..2e71d23
@@ -0,0 +1,13 @@
+[Unit]
+Description=Xinetd A Powerful Replacement For Inetd
+After=syslog.target network.target
+
+[Service]
+Type=forking
+PIDFile=/var/run/xinetd.pid
+EnvironmentFile=-@SYSCONFDIR@/default/xinetd
+ExecStart=@SBINDIR@/xinetd $XINETD_OPTS -pidfile /var/run/xinetd.pid
+ExecReload=@BASE_BINDIR@/kill -HUP $MAINPID
+
+[Install]
+WantedBy=multi-user.target
meta/recipes-extended/xinetd/xinetd_2.3.15.bb +17 -1
index 1928949..4e242ba 100644
@@ -17,12 +17,15 @@ SRC_URI = "http://www.xinetd.org/xinetd-${PV}.tar.gz \
       file://Disable-services-from-inetd.conf-if-a-service-with-t.patch \
       file://xinetd-should-be-able-to-listen-on-IPv6-even-in-ine.patch \
       file://xinetd-CVE-2013-4342.patch \
+      file://xinetd.service \
       "
 
 SRC_URI[md5sum] = "77358478fd58efa6366accae99b8b04c"
 SRC_URI[sha256sum] = "bf4e060411c75605e4dcbdf2ac57c6bd9e1904470a2f91e01ba31b50a80a5be3"
 
-inherit autotools update-rc.d
+inherit autotools update-rc.d systemd
+
+SYSTEMD_SERVICE_${PN} = "xinetd.service"
 
 INITSCRIPT_NAME = "xinetd"
 INITSCRIPT_PARAMS = "defaults"
@@ -52,6 +55,19 @@ do_install() {
 	install -m 644 "${WORKDIR}/xinetd.default" "${D}${sysconfdir}/default/xinetd"
 	install -m 755 "${B}/xinetd/xinetd" "${D}${sbindir}"
 	install -m 755 "${B}/xinetd/itox" "${D}${sbindir}"
+
+	# Remove sysinit script if sysvinit is not in DISTRO_FEATURES
+	if ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'false', 'true', d)}; then
+	    rm -rf ${D}${sysconfdir}/init.d/
+	fi
+
+	# Install systemd unit files
+	install -d ${D}${systemd_unitdir}/system
+	install -m 0644 ${WORKDIR}/xinetd.service ${D}${systemd_unitdir}/system
+	sed -i -e 's,@BASE_BINDIR@,${base_bindir},g' \
+	       -e 's,@SBINDIR@,${sbindir},g' \
+	       -e 's,@SYSCONFDIR@,${sysconfdir},g' \
+	       ${D}${systemd_unitdir}/system/xinetd.service
 }
 
 CONFFILES_${PN} = "${sysconfdir}/xinetd.conf"
Signature · 1 line
1.9.1