[rarpd/el6] Port back to SysV init script
Honza Horak
hhorak at fedoraproject.org
Wed Jun 12 08:10:47 UTC 2013
commit 6c39076cdaf9d7e669af21e93c8f4ad2c0089350
Author: Honza HorĂ¡k <hhorak at redhat.com>
Date: Wed Jun 12 10:10:28 2013 +0200
Port back to SysV init script
rarpd.init | 96 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
rarpd.service | 14 --------
rarpd.spec | 32 ++++++++++++-------
3 files changed, 116 insertions(+), 26 deletions(-)
---
diff --git a/rarpd.init b/rarpd.init
new file mode 100644
index 0000000..070bb4d
--- /dev/null
+++ b/rarpd.init
@@ -0,0 +1,96 @@
+#!/bin/bash
+#
+# /etc/rc.d/init.d/rarpd
+#
+# Starts the rarpd daemon
+#
+# chkconfig: - 82 16
+# description: Server Reverse Address Resolution Protocol requests.
+# processname: rarpd
+
+### BEGIN INIT INFO
+# Provides: rarpd
+# Required-Start: $syslog $network
+# Required-Stop: $syslog $network
+# Default-Start:
+# Default-Stop: 0 1 2 3 4 5 6
+# Short-Description: start and stop rarpd
+# Description: RARP (Reverse Address Resolution Protocol) is a protocol \
+# which allows individual devices on an IP network to get \
+# their own IP addresses from the RARP server. \
+### END INIT INFO
+
+# Source function library.
+. /etc/init.d/functions
+
+# Read the config file if exists
+if [ -f /etc/sysconfig/rarpd ]; then
+ . /etc/sysconfig/rarpd
+fi
+
+RETVAL=0
+prog="rarpd"
+
+
+start() {
+ #if these files don't exist rarpd can't work
+ test -x /usr/sbin/rarpd -a -f /etc/ethers || exit 6
+ # Check if rarpd is already running
+ #if [ ! -f /var/lock/subsys/rarpd ]; then
+ status rarpd;
+ if [ $? -ne 0 ]; then
+ echo -n $"Starting $prog: "
+ daemon /usr/sbin/rarpd $OPTIONS $INTERFACE
+ RETVAL=$?
+ [ $RETVAL -eq 0 ] && touch /var/lock/subsys/rarpd
+ echo
+ fi
+ return $RETVAL
+}
+
+stop() {
+ echo -n $"Stopping $prog: "
+ killproc /usr/sbin/rarpd
+ RETVAL=$?
+ [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/rarpd
+ echo
+ return $RETVAL
+}
+reload() {
+ RETVAL=3
+}
+
+#
+# See how we were called.
+#
+case "$1" in
+ start)
+ start
+ ;;
+ stop)
+ stop
+ ;;
+ reload)
+ reload
+ ;;
+ force-reload|restart)
+ stop
+ start
+ ;;
+ condrestart)
+ if [ -f /var/lock/subsys/rarpd ]; then
+ stop
+ start
+ fi
+ ;;
+ status)
+ status rarpd
+ RETVAL=$?
+ ;;
+ *)
+ echo $"Usage: $0 {start|stop|restart|condrestart|reload|status|force-reload}"
+ RETVAL=2
+
+esac
+
+exit $RETVAL
diff --git a/rarpd.spec b/rarpd.spec
index ac40c57..78d3655 100644
--- a/rarpd.spec
+++ b/rarpd.spec
@@ -1,19 +1,19 @@
Summary: The RARP daemon
Name: rarpd
Version: ss981107
-Release: 41%{?dist}
+Release: 42%{?dist}
License: GPLv2+
Group: System Environment/Daemons
Source: ftp://ftp.fi.netbsd.org/.m/mirrors1/ftp.inr.ac.ru/ip-routing/dhcp.bootp.rarp/rarpd-%{version}.tar.gz
-Source1: rarpd.service
+Source1: rarpd.init
Source2: LICENSE
Patch0: rarpd-%{version}.patch
Patch1: rarpd-fd-leak.patch
Patch2: rarpd-sprintf.patch
-Requires(post): systemd-units
-Requires(preun): systemd-units
-Requires(postun): systemd-units
-BuildRequires: systemd-units
+Requires(post): /sbin/chkconfig
+Requires(preun): /sbin/chkconfig
+Requires(preun): /sbin/service
+Requires(postun): /sbin/service
%description
RARP (Reverse Address Resolution Protocol) is a protocol which allows
@@ -44,30 +44,38 @@ make CFLAGS="$CFLAGS"
cp %{SOURCE2} .
%install
-mkdir -p ${RPM_BUILD_ROOT}%{_unitdir}
+mkdir -p ${RPM_BUILD_ROOT}%{_initrddir}
mkdir -p ${RPM_BUILD_ROOT}%{_sbindir}
mkdir -p ${RPM_BUILD_ROOT}%{_mandir}/man8
-install -m 644 %{SOURCE1} ${RPM_BUILD_ROOT}%{_unitdir}/rarpd.service
+install -m 755 %{SOURCE1} ${RPM_BUILD_ROOT}%{_initrddir}/rarpd
install -m 755 rarpd ${RPM_BUILD_ROOT}%{_sbindir}/rarpd
install -m 644 rarpd.8 ${RPM_BUILD_ROOT}%{_mandir}/man8/rarpd.8
%post
-%systemd_post rarpd.service
+/sbin/chkconfig --add rarpd
%preun
-%systemd_preun rarpd.service
+if [ "$1" = 0 ] ; then
+ service rarpd stop >/dev/null 2>&1
+ /sbin/chkconfig --del rarpd
+fi
%postun
-%systemd_postun_with_restart rarpd.service
+if [ "$1" -ge "1" ]; then
+ service rarpd condrestart >/dev/null 2>&1
+fi
%files
%doc README LICENSE
%{_sbindir}/rarpd
%{_mandir}/man8/*
-%{_unitdir}/*
+%{_initrddir}/rarpd
%changelog
+* Wed Jun 12 2013 Honza Horak <hhorak at redhat.com> - ss981107-42
+- Port back to SysV init script
+
* Tue Jun 11 2013 Honza Horak <hhorak at redhat.com> - ss981107-41
- Fix some packaging issues
- Adding license text since upstream is dead
More information about the scm-commits
mailing list