#!/bin/bash

HOURS=3

CHRBIN=/usr/sbin/chroot
CHRDIR=/chroot/admin


if [ -z $SDDIR ]; then
    SDDIR=/etc/statusd
fi

if [ -z $SPOOLDIR ]; then
    SPOOLDIR=/var/spool/statusd
fi

STF=$SPOOLDIR/policydrl.status


function sqlget() {
	if [ -S $CHRDIR/run/mysqld/mysqld.sock ]; then
		echo "SELECT id
			FROM mail_count
			WHERE from_unixtime(date) > DATE_ADD(NOW(), INTERVAL -${HOURS} HOUR)
			GROUP BY id
			HAVING COUNT(id) > 190
			" | \
		$CHRBIN $CHRDIR mysql \
		--defaults-file=/etc/mysql/debian.cnf \
		--socket=/run/mysqld/mysqld.sock \
		-ss -n sys_policyd
	fi
}

function quotacheck() {

	EXCEED=`sqlget`

	if [ "$EXCEED" != "" ]; then
		SEP=''
		for EX in $EXCEED; do
			echo -n "$SEP"
			echo -n "$EX"
			SEP=', '
		done
		echo
	else
		echo "OK"
	fi
}

if [ "$1" == "cron" ]; then
	RES=`quotacheck`
	echo "$RES" >$STF
else
	if [ -f $STF ]; then
		RES=`cat $STF`
		echo "$RES"
		if [ "$RES" != "OK" ]; then
			exit 1
		else
			exit 0
		fi
	else
		echo "OK"
		exit 0
	fi
fi
