096de1e
diff -rup xen-3.0.5-testing.hg-rc3-14934/tools/examples/init.d/xend xen-3.0.5-testing.hg-rc3-14934.new/tools/examples/init.d/xend
096de1e
--- xen-3.0.5-testing.hg-rc3-14934/tools/examples/init.d/xend	2007-04-26 19:31:46.000000000 -0400
096de1e
+++ xen-3.0.5-testing.hg-rc3-14934.new/tools/examples/init.d/xend	2007-04-26 19:32:47.000000000 -0400
1fb8611
@@ -7,40 +7,66 @@
75a3df7
 # chkconfig: 2345 98 01
75a3df7
 # description: Starts and stops the Xen control daemon.
75a3df7
 
75a3df7
+# Source function library.
75a3df7
+. /etc/rc.d/init.d/functions
75a3df7
+
75a3df7
+RETVAL=0
3ced529
+if [ ! -d /proc/xen ]; then
3ced529
+	exit 0
3ced529
+fi
75a3df7
 if ! grep -q "control_d" /proc/xen/capabilities ; then
75a3df7
 	exit 0
75a3df7
 fi
75a3df7
+prog=xend
75a3df7
 
75a3df7
 # Wait for Xend to be up
75a3df7
 function await_daemons_up
75a3df7
 {
75a3df7
 	i=1
75a3df7
 	rets=10
75a3df7
-	xend status
75a3df7
+	/usr/sbin/xend status
75a3df7
 	while [ $? -ne 0 -a $i -lt $rets ]; do
75a3df7
 	    sleep 1
75a3df7
 	    echo -n .
75a3df7
 	    i=$(($i + 1))
75a3df7
-	    xend status
75a3df7
+	    /usr/sbin/xend status
75a3df7
 	done
1fb8611
+	if [ $i -ge $rets ]; then
1fb8611
+	    RETVAL=-1
1fb8611
+	    return 1
1fb8611
+	fi
1fb8611
+	return 0
75a3df7
 }
75a3df7
 
75a3df7
 case "$1" in
75a3df7
   start)
75a3df7
-	xend start
75a3df7
+	echo -n $"Starting $prog: "
096de1e
+	modprobe blkbk 2>/dev/null
096de1e
+	modprobe blktap 2>/dev/null
096de1e
+	modprobe xenblktap 2>/dev/null
096de1e
+	modprobe netbk 2>/dev/null
75a3df7
+	/usr/sbin/xend start
75a3df7
 	await_daemons_up
75a3df7
 	;;
75a3df7
   stop)
75a3df7
-	xend stop
75a3df7
+	echo -n $"Stopping $prog: "
75a3df7
+	/usr/sbin/xend stop
1fb8611
+	RETVAL=$?
75a3df7
 	;;
75a3df7
   status)
75a3df7
-	xend status
75a3df7
+	/usr/sbin/xend status
75a3df7
+	if [ $? = 0 ] ; then
1fb8611
+	    echo -n $"$prog is running"
75a3df7
+	else
1fb8611
+	    echo -n $"$prog is stopped"
1fb8611
+	    RETVAL=3
75a3df7
+	fi
75a3df7
 	;;
1fb8611
   reload)
1fb8611
-        xend reload
1fb8611
+        /usr/sbin/xend reload
1fb8611
         ;;
1fb8611
   restart|force-reload)
75a3df7
-	xend restart
75a3df7
+	/usr/sbin/xend restart
75a3df7
 	await_daemons_up
75a3df7
 	;;
75a3df7
   *)
096de1e
@@ -50,5 +76,12 @@ case "$1" in
75a3df7
 	exit 1
75a3df7
 esac
75a3df7
 
75a3df7
-exit $?
75a3df7
+if [ $RETVAL = 0 ] ; then
75a3df7
+    echo_success
75a3df7
+    echo
75a3df7
+else
75a3df7
+    echo_failure
75a3df7
+    echo
75a3df7
+fi
75a3df7
+exit $RETVAL
75a3df7