#!/bin/bash

. /etc/rc.conf
. /etc/rc.d/functions
. /etc/conf.d/xdm

PIDFILE=/run/xdm.pid
PID=$(cat $PIDFILE 2>/dev/null)
if ! readlink -q /proc/$PID/exe | grep -q '^/usr/bin/xdm'; then
	PID=
	rm $PIDFILE 2>/dev/null
fi

case "$1" in
	start)
		stat_busy 'Starting X Display Manager'
		[[ -z $PID ]] && /usr/bin/xdm $XDM_ARGS
		if [[ $? -gt 0 ]]; then
			stat_fail
		else
			add_daemon xdm
			stat_done
		fi
		;;
	stop)
		stat_busy 'Stopping X Display Manager'
		[[ ! -z $PID ]] && kill $PID &> /dev/null
		if [[ $? -gt 0 ]]; then
			stat_fail
		else
			rm_daemon xdm
			stat_done
		fi
		;;
	restart)
		$0 stop
		sleep 1
		$0 start
		;;
	*)
		echo "usage: $0 {start|stop|restart}"
esac
exit 0