public inbox for cluster-cvs@sourceware.org
help / color / mirror / Atom feed
* cluster: STABLE3 - qdisk: improve init script
@ 2009-01-09 12:45 Fabio M. Di Nitto
  0 siblings, 0 replies; only message in thread
From: Fabio M. Di Nitto @ 2009-01-09 12:45 UTC (permalink / raw)
  To: cluster-cvs-relay

Gitweb:        http://git.fedorahosted.org/git/cluster.git?p=cluster.git;a=commitdiff;h=f061b741845ac279e72740df17ec9f30b5590df3
Commit:        f061b741845ac279e72740df17ec9f30b5590df3
Parent:        f02b9dad85f37ac863edba6686b9ac64e37af664
Author:        Fabio M. Di Nitto <fdinitto@redhat.com>
AuthorDate:    Fri Jan 9 12:09:52 2009 +0100
Committer:     Fabio M. Di Nitto <fdinitto@redhat.com>
CommitterDate: Fri Jan 9 13:44:36 2009 +0100

qdisk: improve init script

based on Marian Marinov submission for gfs2 init script,
simplify the init script distro overrides to make the script
easily readable again and also easier to write.

Set also a secure PATH.

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
---
 cman/init.d/qdiskd.in |   59 ++++++++++++++++++++++--------------------------
 1 files changed, 27 insertions(+), 32 deletions(-)

diff --git a/cman/init.d/qdiskd.in b/cman/init.d/qdiskd.in
index 3efdfe4..e7e8c74 100644
--- a/cman/init.d/qdiskd.in
+++ b/cman/init.d/qdiskd.in
@@ -15,40 +15,20 @@
 # Description:		start/stop quorum disk daemon
 ### END INIT INFO
 
-# rpm based distros
-if [ -d /etc/sysconfig ]; then
-	[ -f @INITDDIR@/functions ] && . @INITDDIR@/functions
-	[ -f /etc/sysconfig/cluster ] && . /etc/sysconfig/cluster
-	[ -f /etc/sysconfig/qdiskd ] && . /etc/sysconfig/qdiskd
-	[ -z "$LOCK_FILE" ] && LOCK_FILE="/var/lock/subsys/qdiskd"
-	success=success
-	failure=failure
-	status=status
-fi
+# set secure PATH
+PATH="/bin:/usr/bin:/sbin:/usr/sbin:@SBINDIR@"
 
-# deb based distros
-if [ -d /etc/default ]; then
-	[ -f /etc/default/cluster ] && . /etc/default/cluster
-	[ -f /etc/default/qdiskd ] && . /etc/default/qdiskd
-	[ -z "$LOCK_FILE" ] && LOCK_FILE="/var/lock/qdiskd"
-	success=local_success
-	failure=local_failure
-	# functions in rpm based distro implements a very complete version
-	# of pidof. For now we can live with this.
-	status=local_status
-fi
-
-local_success()
+success()
 {
     echo -ne "[  OK  ]\r"
 }
 
-local_failure()
+failure()
 {
     echo -ne "[FAILED]\r"
 }
 
-local_status()
+status()
 {
     pid=$(pidof $1 2>/dev/null)
     rtrn=$?
@@ -60,6 +40,21 @@ local_status()
     return $rtrn
 }
 
+# rpm based distros
+if [ -d /etc/sysconfig ]; then
+	[ -f @INITDDIR@/functions ] && . @INITDDIR@/functions
+	[ -f /etc/sysconfig/cluster ] && . /etc/sysconfig/cluster
+	[ -f /etc/sysconfig/qdiskd ] && . /etc/sysconfig/qdiskd
+	[ -z "$LOCK_FILE" ] && LOCK_FILE="/var/lock/subsys/qdiskd"
+fi
+
+# deb based distros
+if [ -d /etc/default ]; then
+	[ -f /etc/default/cluster ] && . /etc/default/cluster
+	[ -f /etc/default/qdiskd ] && . /etc/default/qdiskd
+	[ -z "$LOCK_FILE" ] && LOCK_FILE="/var/lock/qdiskd"
+fi
+
 rtrn=1
 retries=0
 
@@ -70,7 +65,7 @@ case "$1" in
 
 	$0 status >/dev/null
 	if [ $? -eq 0 ]; then
-		$success
+		success
 		echo
 		exit 0
 	fi
@@ -79,10 +74,10 @@ case "$1" in
 	rtrn=$?
 	if [ $rtrn = 0 ]; then
 		touch $LOCK_FILE
-		$success
+		success
 		echo
 	else
-		$failure
+		failure
 		echo
 	fi
 		
@@ -98,12 +93,12 @@ case "$1" in
 		((retries++))
 	done
 	if [ -z "$(pidof qdiskd)" ]; then
-		$success
+		success
 		echo
 		rtrn=0
 		rm -f $LOCK_FILE
 	else
-		$failure
+		failure
 		echo
 		rtrn=1
 	fi
@@ -116,12 +111,12 @@ case "$1" in
 	;;
 
   status)
-	$status qdiskd
+	status qdiskd
 	rtrn=$?
 	;;
 
   *)
-	echo $"Usage: $0 {start|stop|reload|restart|status}"
+	echo "Usage: $0 {start|stop|reload|restart|status}"
 	;;
 esac
 


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2009-01-09 12:45 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-01-09 12:45 cluster: STABLE3 - qdisk: improve init script Fabio M. Di Nitto

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).