#
# xend Script to start and stop the Xen control daemon.
#
-# chkconfig: 2345 98 01
+# chkconfig: 2345 95 05
# description: Starts and stops the Xen control daemon.
#
-### BEGIN INIT INFO
-# Provides: xend
-# Required-Start: $syslog $remote_fs xenstored xenconsoled
-# Should-Start:
-# Required-Stop: $syslog $remote_fs xenstored xenconsoled
-# Should-Stop:
-# Default-Start: 2 3 4 5
-# Default-Stop: 0 1 6
-# Short-Description: Start/stop xend
-# Description: Starts and stops the Xen control daemon.
-### END INIT INFO
-waitfordaemon() {
- i=1
- rets=10
- /usr/sbin/xend status
- while [ $? -ne 0 -a $i -lt $rets ]; do
- sleep 1
- i=$(($i + 1))
- /usr/sbin/xend status
- done
- return $?
-}
+# Source function library.
+. /etc/rc.d/init.d/functions
start() {
if [ -f /var/lock/subsys/xend ]; then
echo "xenconsoled and xenstored must be started first"
return
fi
- show "Starting Xen control daemon"
- busy
- /usr/sbin/xend start
- waitfordaemon
+ msg_starting "Starting Xen control daemon"
+ daemon /usr/sbin/xend
RETVAL=$?
- if [ $RETVAL -eq 0 ]; then
- touch /var/lock/subsys/xend
- ok
- else
- fail
- fi
+ [ $RETVAL -eq 0 ] && touch /var/lock/subsys/xend
}
stop() {
msg_not_running "Xen control daemon"
return
fi
- show "Stopping Xen control daemon"
- busy
- /usr/sbin/xend stop
- ok
+ msg_stopping "Stopping Xen control daemon"
+ killproc xend
rm -f /var/lock/subsys/xend
}
reload() {
if [ ! -f /var/lock/subsys/xend ]; then
msg_not_running "Xen control daemon"
- return
+ RETVAL=7
+ else
+ msg_reloading "Reloading Xen control daemon"
+ killproc /usr/sbin/xend -HUP
+ RETVAL=$?
fi
- show "Reloading Xen control daemon"
- busy
- /usr/sbin/xend reload
- ok
}
-restartp() {
+condrestart() {
if [ ! -f /var/lock/subsys/xend ]; then
msg_not_running "Xen control daemon"
- return
- fi
- show "Restarting Xen control daemon"
- busy
- /usr/sbin/xend restart
- waitfordaemon
- RETVAL=$?
- if [ $RETVAL -eq 0 ]; then
- ok
+ RETVAL=$1
else
- fail
+ stop
+ start
fi
}
stop)
stop
;;
- status)
- /usr/sbin/xend status
+ restart)
+ stop
+ start
+ ;;
+ try-restart)
+ condrestart 0
;;
- reload)
+ reload|force-reload)
reload
;;
- restart|force-reload)
- restart
+ status)
+ status xend
+ exit $?
;;
*)
- msg_usage "$0 {start|stop|status|restart|reload|force-reload}"
+ msg_usage "$0 {start|stop|restart|try-restart|reload|force-reload|status}"
exit 3
esac