3a3c5333d053bc626bbb61d0e78d63a9c7275a6d
[newsgate] / bin / addrcheck
1 #! /bin/sh
2
3 set -e
4 kind=${1?kind}
5 tail=${2?tail}
6 sender=${3?sender}
7
8 ##bad () { echo "-$*"; exit 0; }
9 bad () {
10 echo "consider reject to $kind:$tail from $sender ($*)" >>addrcheck.log"
11 echo "+just this once"
12 exit 0
13 }
14
15 entry=`cdb -q groups.cdb "$kind:$tail"` || bad "bad tag $tail"
16 set -- $entry
17 case $kind in
18 g)
19 SENDER=$sender check-sender <auth.cdb 2>/dev/null ||
20 bad "invalid sender $sender"
21 ;;
22 t)
23 echo $sender
24 echo "$4"
25 case "$sender" in $4) ;; *) bad "incorrect sender $sender" ;; esac
26 ;;
27 esac
28 echo +