#!/bin/sh
#=================================================================
# Begin lxcfs
#
# Description :	Starts/Stops FUSE filesystem for LXC
# chkconfig:	345 40 05
#
#=================================================================

### BEGIN INIT INFO
# Provides:		lxcfs
# Required-Start:	$syslog
# Should-Start:		$syslog
# Required-Stop:
# Should-Stop:
# Default-Start:       3 4 5
# Default-Stop:        0 1 2 6
# Short-Description:   Starts lxcfs daemon.
# Description:         Starts lxcfs daemon.
### END INIT INFO

. /lib/lsb/init-functions

PROG="lxcfs"
WORKDIR="/var/lib/lxcfs"
PID_FILE=/var/run/$PROG.pid

# Some functions to make the below more readable
case "$1" in
    start	)
      modprobe fuse
      log_info_msg "Starting FUSE filesystem for lxc"
      ${PROG} --pidfile=${PID_FILE} ${WORKDIR} > /dev/null 2>&1 &
      evaluate_retval
      ;;

    stop	)
      if [ -f ${PID_FILE} ] ; then
        pid=`cat ${PID_FILE} 2>/dev/null`
	if [ -n "${pid}"  -a -d /proc/${pid} ]; then
          log_info_msg "Stopping FUSE filesystem for lxc"
          kill -TERM ${pid}
          evaluate_retval
	  fi
        fi
      ;;

    restart	)
        $0 stop
	sleep 1
        $0 start
        ;;

    condrestart	)
        if [ -f $PID_FILE ] ; then
	  pid=`cat $PID_FILE 2>/dev/null`
	  if [ -n "${pid}"  -a -d /proc/$pid ]; then
	    $0 restart
	    fi
	  fi
	;;

    *)
        echo "Usage: $0 {start|stop|condrestart|restart}"
        exit 1
        ;;
  esac

