# Start the XDM and/or XFS daemons.

case $#:$1 in
1:start|1:stop)	;;
*)	echo "Usage: $0 start|stop" >&2; exit 1
esac

X=XF86-3.1.1
root=/opt/$X
bin=$root/bin
var=/var/opt/$X

cd / || exit
test -d $var || exit 0

case $1 in
start)
	daemonize=; test -t 0 && daemonize='intr -d'

	# Start a daemon if the configuration files exist.
	if [ -f $bin/xdm -a -f $var/xdm/xdm-config ]
	then
		echo "Starting xdm."
		rm -f $var/xdm/A*
		$daemonize $bin/xdm -config $var/xdm/xdm-config &
	fi

	if [ -f $bin/xfs -a -f $var/fs/fsconfig ]
	then
		echo "Starting xfs."
		$daemonize $bin/xfs -config $var/fs/fsconfig &
		echo $! >$var/fs/fs.pid
	fi
	;;
stop)
	# Stop the daemons.
	if [ -f $var/xdm/xdm-config ] \
		&& pid=`cat $var/xdm/xdm-pid 2>/dev/null` \
		&& ps -p $pid | grep xdm >/dev/null
	then
		kill $pid
	fi

	if [ -f $var/fs/fsconfig ] \
		&& pid=`cat $var/fs/fs.pid 2>/dev/null` \
		&& ps -p $pid | grep xfs >/dev/null
	then
		kill $pid && sleep 2 && kill $pid 2>/dev/null
	fi
	exit 0
esac
