#!/bin/sh
#
# FastCGI daemon
#
getproparg() {
    val=`svcprop -p $1 $SMF_FMRI`
    [ -n "$val" ] && echo $val
}

if [ -z "$SMF_FMRI" ]; then
    echo "Error: SMF framework variables are not initialized"
    exit $SMF_EXIT_ERR
fi

PREFIX=`getproparg noc-fcgi/prefix`
PYTHON=`getproparg noc-fcgi/python`
SOCKET=`getproparg noc-fcgi/socket`
PIDFILE=`getproparg noc-fcgi/pidfile`
MINSPARE=`getproparg noc-fcgi/minspare`
MAXSPARE=`getproparg noc-fcgi/maxspare`
MAXREQUESTS=`getproparg noc-fcgi/maxrequests`
MAXCHILDREN=`getproparg noc-fcgi/maxchildren`
FCGI="$PREFIX/scripts/noc-fcgi.py"

case "$1" in
start)
    $PYTHON $FCGI -s$SOCKET -S$MINSPARE:$MAXSPARE -R$MAXREQUESTS -C$MAXCHILDREN -p$PIDFILE -r$PREFIX 2>&1
    ;;
stop)
    if [ -f "$PIDFILE" ]; then
        /usr/bin/kill -QUIT `/usr/bin/cat $PIDFILE`
        rm -f $PIDFILE
    fi
    /usr/bin/test -S "$SOCKET" &&  rm -f $SOCKET
    ;;
refresh)
    $0 stop
    $0 start
    ;;
*)
    echo "Usage: $0 {start|stop|refresh}"
    exit $SMF_EXIT_ERR_CONFIG
    ;;
esac
exit $SMF_EXIT_OK