#!/bin/sh
#
# bluetooth    Bluetooth subsystem starting and stopping
#
# chkconfig: 345 25 90
# description: Bluetooth subsystem
# SMGL-script-version=20030714
# SMGL-START:S:S25
# SMGL-STOP:0 6:K90
#
# Source function library.
#. /etc/init.d/functions
. /etc/init.d/smgl_init

# Source Bluetooth configuration.
#. /etc/sysconfig/bluetooth

prog="Bluetooth"
PROGRAM=/usr/sbin/hcid
RUNLEVEL=3
NEEDS="+local_fs"

UART_CONF="/etc/bluetooth/uart"

start_uarts()
{
	[ -f /sbin/hciattach -a -f $UART_CONF ] || return
	grep -v '^#' $UART_CONF | while read i; do
		/usr/sbin/hciattach $i
	done
}

stop_uarts()
{
	killproc hciattach > /dev/null 2>&1
}

start() 
{
        echo $"Starting $prog: "
        loadproc $PROGRAM

	if [ -x /usr/sbin/sdpd ]; then
		loadproc /usr/sbin/sdpd
	fi

	start_uarts
	[ -d /var/lock/subsys ] || mkdir -p /var/lock/subsys
	touch /var/lock/subsys/bluetooth
}

stop() 
{
        echo $"Shutting down $prog: "
	killproc hcid

	if [ -x /usr/sbin/sdpd ]; then
		killproc sdpd
	fi

	stop_uarts
	rm -f  /var/lock/subsys/bluetooth
}

case "$1" in
  start)
	start
        ;;
  stop)
	stop
        ;;
  restart|reload)
	stop
	start
	;;
  condrestart)
	[ -e /var/lock/subsys/bluetooth ] && (stop; start)
	;;
  *)
        echo $"Usage: $0 {start|stop|restart|reload|condrestart}"
        exit 1
esac

exit 0
