Blob Blame History Raw
diff --git a/packages/rpm/mldonkey.init b/packages/rpm/mldonkey.init
index 536a88a..2291a9b 100755
--- a/packages/rpm/mldonkey.init
+++ b/packages/rpm/mldonkey.init
@@ -4,7 +4,7 @@
 #
 # Laurent Culioli <laurent@pschit.net>
 #
-# chkconfig: 2345 90 15
+# chkconfig: - 90 15
 # description: Mldonkey is client to access multiple peer-to-peer network
 # processname: mldonkey
 # config: /etc/sysconfig/mldonkey
@@ -15,6 +15,8 @@
 # Source some options 
 . /etc/sysconfig/mldonkey
 
+[ -z $LOGFILE ] && LOGFILE="/dev/null"
+
 RETVAL=0
 
 # Path to the mldonkey binarie.
@@ -27,17 +29,18 @@ fullpath=/usr/bin/mlnet
 [ ${NETWORKING} = "no" ] && exit 0
 
 start() {
-        gprintf "Starting Mldonkey (mlnet): "
-         cd $DIRECTORY
-	daemon --user mldonkey --check mldonkey $NICE "$fullpath  > /dev/null 2>&1 &"
-	touch /var/lock/subsys/mldonkey
-	echo
+       echo -n $"Starting Mldonkey (mlnet): "
+       cd $DIRECTORY
+       daemon --user mldonkey --check mldonkey $NICE "$fullpath  > $LOGFILE 2>&1 &"
+       RETVAL=$?
+       [ $RETVAL -eq 0 ] && touch /var/lock/subsys/mldonkey
+       echo
 }
 stop() {
-        gprintf "Stopping Mldonkey (mlnet): "
-        killproc mldonkey-bin
-	rm -fr /var/lock/subsys/mldonkey
-	echo
+       echo -n $"Stopping Mldonkey (mlnet): "
+       killproc $fullpath
+       rm -fr /var/lock/subsys/mldonkey
+       echo
 }
 
 
@@ -53,11 +56,19 @@ case "$1" in
                 stop
                 start
                 ;;
+        condrestart)
+                if status mldonkey >/dev/null; then
+                    stop
+                    start
+                else
+                    echo $"Mldonkey (mlnet) is stopped"
+                fi
+                ;;
         status)
 	        status mldonkey
 		;;
-	*)
-                gprintf "Usage: mldonkey {start|stop|restart|reload|status}\n"
+        *)
+                echo $"Usage: $0 {start|stop|restart|reload|condrestart|status}"
                 RETVAL=1
 esac
 exit $RETVAL