#! /bin/sh
prefix=@prefix@
exec_prefix=@exec_prefix@
sbindir=@sbindir@
localstatedir=@localstatedir@
logdir=@logdir@
rundir=${localstatedir}/run/radiusd
MAILTO=root
RADIUSD=$sbindir/radiusd
exec >> $logdir/radwatch.log 2>&1
if [ "$1" ] && [ -x "$1" ]
then
RADIUSD=$1
shift
fi
cd $logdir
[ -d $logdir/radacct ] && cd $logdir/radacct
ulimit -c unlimited
(
trap 'echo `date`: exit; kill `cat $rundir/radiusd.pid`; exit 0' TERM
trap "" HUP TSTP
while :
do
$RADIUSD -f $* &
echo "$!" > $rundir/radiusd.pid
wait
exec >> $logdir/radwatch.log 2>&1
echo "`date`: Radius died, restarting.."
date | mail -s "Radius died, restarting.." $MAILTO
sleep 10
done
) &
echo "$!" > $rundir/radwatch.pid
sleep 1