#! /bin/sh
#
# Original file :
#		Written by Miquel van Smoorenburg <miquels@cistron.nl>.
#		Modified for Debian GNU/Linux
#		by Ian Murdock <imurdock@gnu.ai.mit.edu>.
#
# Version:	@(#)skeleton  1.9.1  08-Apr-2002  miquels@cistron.nl
#
# 
# This file has been rewritten by Sylvain LE GALL <sylvain.le-gall@m4x.org>
# for mldonkey-package.

PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
WRAPPER=/usr/bin/mldonkey_server
NAME=mlnet
DESC="MLDonkey"
CONFIG=/etc/default/mldonkey-server
PIDFILE=/var/run/mldonkey/$NAME.pid

test -x $WRAPPER || exit 0

test -e $CONFIG || exit 0

set -e

. $CONFIG

if [ "$LAUNCH_AT_STARTUP" != "true" ]; then
	exit 0
fi

if [ ! -d $MLDONKEY_DIR ]; then
	echo "$MLDONKEY_DIR is not a valid directory"
	exit 0
fi

if [ ! -f $MLDONKEY_DIR/downloads.ini ]; then
	echo "$MLDONKEY_DIR is not a valid directory"
	exit 0
fi

if [ -e $MLDONKEY_DIR/files.ini ] && [ ! -e $MLDONKEY_DIR/files.ini.fasttrack ]; then
	echo "First reboot after Fasttrack problem see /usr/share/doc/mldonker-server/README.Debian"
	echo -n "Splitting $MLDONKEY_DIR/files.ini to remove Fasttrack files : "
	/usr/bin/mldonkey_files --split Fasttrack -f0 $MLDONKEY_DIR/files.ini \
	-f1 $MLDONKEY_DIR/files.ini.fasttrack \
	-f2 $MLDONKEY_DIR/files.ini 
	echo "done."
fi

USER=`/usr/bin/stat --format="%U" $MLDONKEY_DIR/downloads.ini`

START_STOP_OPTIONS=""

if [ -n "$MLDONKEY_NICENESS" ]; then
	START_STOP_OPTIONS="$START_STOP_OPTIONS --nicelevel $MLDONKEY_NICENESS"
fi

case "$1" in
  start)
	echo -n "Starting $DESC: $NAME"
	
#	export MLDONKEY_CHROOT=$MLDONKEY_DIR

	start-stop-daemon --start --quiet --pidfile $PIDFILE \
                $START_STOP_OPTIONS --exec $WRAPPER -- \
		--start --pidfile $PIDFILE --chdir $MLDONKEY_DIR --chuid $USER \
		--max-alive $MAX_ALIVE --umask $MLDONKEY_UMASK --daemon
	
	echo "."
	;;
  stop)
	echo -n "Stopping $DESC: $NAME"
	
	start-stop-daemon --stop --quiet --pidfile $PIDFILE

	echo "."
	;;
  restart)

	echo -n "Restarting $DESC: $NAME"
	
	start-stop-daemon --stop --signal 1 --quiet --pidfile $PIDFILE
  
	echo "."
	;;
	
  force-reload)
  	
	echo -n "Reloading $DESC: $NAME"
	
	$0 stop
	sleep 1
	$0 start
	
	;;
	
  *)
	echo "Usage: $0 {start|stop|restart|force-reload}" >&2
	exit 1
	;;
esac

exit 0
