aboutsummaryrefslogtreecommitdiff
path: root/security
diff options
context:
space:
mode:
authorThomas Gellekum <tg@FreeBSD.org>2000-07-05 12:37:06 +0000
committerThomas Gellekum <tg@FreeBSD.org>2000-07-05 12:37:06 +0000
commit546041ba3113a4a58d8f3e7e7cb90e78fcb38ea8 (patch)
tree7b9cd553a62be7a9bd52800d334be8b703eb93a1 /security
parent01ab6da99c55af36e516b7f8016373124c4039cf (diff)
downloadports-546041ba3113a4a58d8f3e7e7cb90e78fcb38ea8.tar.gz
ports-546041ba3113a4a58d8f3e7e7cb90e78fcb38ea8.zip
As threatened on freebsd-ports: all startup scripts know about the two
options `start' and `stop' now (unless I have forgotten any). This allows us to call the scripts from /etc/rc.shutdown with the correct option. The (42 or so) ports that already DTRT before are unchanged.
Notes
Notes: svn path=/head/; revision=30229
Diffstat (limited to 'security')
-rw-r--r--security/xinetd/Makefile6
-rw-r--r--security/xinetd/files/xinetd.sh22
2 files changed, 23 insertions, 5 deletions
diff --git a/security/xinetd/Makefile b/security/xinetd/Makefile
index 2c5de6234fdd..2de8506ddb30 100644
--- a/security/xinetd/Makefile
+++ b/security/xinetd/Makefile
@@ -24,11 +24,7 @@ MAN8= xinetd.8 xinetd.log.8
post-install:
@if [ ! -f ${PREFIX}/etc/rc.d/xinetd.sh ]; then \
${ECHO} "Install ${PREFIX}/etc/rc.d/xinetd.sh startup file."; \
- ${ECHO} "#!/bin/sh" > ${PREFIX}/etc/rc.d/xinetd.sh; \
- ${ECHO} "[ -x ${PREFIX}/sbin/xinetd ] &&" >> ${PREFIX}/etc/rc.d/xinetd.sh; \
- ${ECHO} "${PREFIX}/sbin/xinetd -pid 2> /var/run/xinetd.pid &&" >> ${PREFIX}/etc/rc.d/xinetd.sh; \
- ${ECHO} "${ECHO} -n ' xinetd'" >> ${PREFIX}/etc/rc.d/xinetd.sh; \
- ${CHMOD} 751 ${PREFIX}/etc/rc.d/xinetd.sh; \
+ ${INSTALL_SCRIPT} -m 751 ${FILESDIR}/xinetd.sh ${PREFIX}/etc/rc.d/xinetd.sh; \
fi
strip ${PREFIX}/sbin/xinetd
diff --git a/security/xinetd/files/xinetd.sh b/security/xinetd/files/xinetd.sh
new file mode 100644
index 000000000000..37a550d6f3ee
--- /dev/null
+++ b/security/xinetd/files/xinetd.sh
@@ -0,0 +1,22 @@
+#!/bin/sh
+
+if ! PREFIX=$(expr $0 : "\(/.*\)/etc/rc\.d/$(basename $0)\$"); then
+ echo "$0: Cannot determine the PREFIX" >&2
+ exit 1
+fi
+
+case "$1" in
+start)
+ [ -x ${PREFIX}/sbin/xinetd ] && \
+ ${PREFIX}/sbin/xinetd -pid 2> /var/run/xinetd.pid && \
+ echo -n ' xinetd'
+ ;;
+stop)
+ killall xinetd && echo -n ' xinetd'
+ ;;
+*)
+ echo "Usage: `basename $0` {start|stop}" >&2
+ ;;
+esac
+
+exit 0