#! /bin/sh set -e kind=${1?kind} tail=${2?tail} sender=${3?sender} ##bad () { echo "-$*"; exit 0; } bad () { echo "consider reject to $kind:$tail from $sender ($*)" >>addrcheck.log echo "+just this once" exit 0 } entry=`cdb -q groups.cdb "$kind:$tail"` || bad "bad tag $tail" set -- $entry case $kind in g) SENDER=$sender check-sender /dev/null || bad "invalid sender $sender" ;; t) case "$sender" in $4) ;; *) bad "incorrect sender $sender" ;; esac ;; esac echo +ok