#!/bin/sh
PREFIX=$(expr $0 : "\(/.*\)/bin/$(basename $0)\$") || exit 1
if [ -r $PREFIX/etc/utcount.conf ]; then
. $PREFIX/etc/utcount.conf
else
exit 1
fi
bindir=$PREFIX/bin
gate_connect=$bindir/$gate_connect
export gate_count_startnum
if [ -f /var/run/count.pid ] && ps `cat /var/run/count.pid` >/dev/null 2>&1
then
echo "Another count process already run. Stop it and try again." >&2
exit 1
fi
trap : 1
trap : 2
trap : 15
set -T
trap "rm -f /var/run/count.pid; exit" 1 2 15
echo -n $$ > /var/run/count.pid || exit 1
$gate_connect | while read action username address
do
if echo "$action $username $address" \
| grep -E -v -q "^[+-] [a-z].* ([0-9]{1,3}\.){3}[0-9]{1,3}$"
then
continue
fi
usernum=`$bindir/count_$gate_count_prog $action $username`
$bindir/count_$gate_count_fw $action $usernum $address
echo "[`date '+%d.%m.%y %H:%M'`] $action $username $address $usernum" \
>> $gate_logfile
done
syntax highlighted by Code2HTML, v. 0.9.1