]> git.pld-linux.org Git - packages/crossfire.git/blobdiff - crossfire.init
- x32 rebuild
[packages/crossfire.git] / crossfire.init
index ad5d672b5fd7ad58a37a74e1bc554684783ddad1..1a2958f4f6d2cef816d8fbb5186e1878cd7145c6 100644 (file)
@@ -1,7 +1,7 @@
 #!/bin/sh
 #
 # chkconfig:   345 98 03
-# description: Starts and stops the Crossfire server 
+# description: Starts and stops the Crossfire server
 #
 
 export PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/X11R6/bin
@@ -17,7 +17,7 @@ export PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/X11R6/bin
 
 # Check that networking is up.
 if is_yes "${NETWORKING}"; then
-       if [ ! -f /var/lock/subsys/network ]; then
+       if [ ! -f /var/lock/subsys/network -a "$1" != stop -a "$1" != status ]; then
                msg_network_down crossfire
                exit 1
        fi
@@ -27,12 +27,13 @@ fi
 
 TMPDIR="/tmp"; export TMPDIR
 
+RETVAL=0
 case "$1" in
   start)
        if [ ! -f /var/lock/subsys/crossfire ]; then
                cd /
                FLAGS="-log /var/log/crossfire"
-               if [ -n "$PORT" ] ; then
+               if [ -n "$PORT" ]; then
                        FLAGS="$FLAGS -csport $PORT"
                fi
                if is_yes "$DEBUG" ; then
@@ -41,12 +42,11 @@ case "$1" in
                        FLAGS="$FLAGS +d"
                fi
                msg_starting crossfire
-               daemon su games -c "\"exec crossfire -detach $FLAGS >>/var/log/crossfire 2>&1\"" 
+               daemon su games -s /bin/sh -c "\"exec crossfire -detach $FLAGS >>/var/log/crossfire 2>&1\""
                RETVAL=$?
                [ $RETVAL -eq 0 ] && touch /var/lock/subsys/crossfire
        else
                msg_already_running crossfire
-               exit 1
        fi
        ;;
   stop)
@@ -56,33 +56,31 @@ case "$1" in
                rm -f /var/lock/subsys/crossfire >/dev/null 2>&1
        else
                msg_not_running crossfire
-               exit 1
        fi
        ;;
   status)
        status crossfire
+       RETVAL=$?
        su games -c "crossfire +d -s"
-       exit $?
        ;;
   restart)
        $0 stop
        $0 start
+       RETVAL=$?
        ;;
-  reload)
+  reload|force-reload)
        if [ -f /var/lock/subsys/crossfire ]; then
                msg_reloading crossfire
-               busy
                killproc crossfire
                RETVAL=$?
-               [ $RETVAL -eq 0 ] && ok || died
        else
-               msg_not_running crossfire
-               exit 1
+               msg_not_running crossfire >&2
+               exit 7
        fi
        ;;
   *)
-       msg_usage "$0 {start|stop|restart|reload|status}"
-       exit 1
+       msg_usage "$0 {start|stop|restart|reload|force-reload|status}"
+       exit 3
 esac
 
 exit $RETVAL
This page took 0.513152 seconds and 4 git commands to generate.