#!/bin/bash

#suche Spammails extrahiere Subject und mach daraus suchmuster 
# use it as it is 
#wirft tab und zuviele leerzeichen aus den strings 

ADDRESS=$1
DOMAIN=$2
FILE=$3
FILTER=$4
POSTFIDIR=$5
SUBDIRFILTER=$6
LOGFILE=$7
LOGDIR=/var/log/mail/
MAILDIR=/var/mail/virtual/$DOMAIN/$ADDRESS/cur


sed -ne '/ - spam.*to=<'$ADDRESS@$DOMAIN'/ s/.*from=<\(.*\)> to=.*/\1/p'  $LOGDIR/$LOGFILE  |sort -u >>/$POSTFIDIR/$SUBDIRFILTER/$FILE

sed -ne '/^From:/s/.*<\(.*\)>.*/\1/p; s/^From:\s*\(.*\)$/\1/p'  $MAILDIR/* >>/$POSTFIDIR/$SUBDIRFILTER/$FILE

sort -u  /$POSTFIDIR/$SUBDIRFILTER/$FILE | sed -e 's/\t//g ;s/ //g' >/$POSTFIDIR/$SUBDIRFILTER/$FILE.tmp
mv /$POSTFIDIR/$SUBDIRFILTER/$FILE.tmp /$POSTFIDIR/$SUBDIRFILTER/$FILE

sort -u /$POSTFIDIR/$SUBDIRFILTER/$FILE | sed -e 's/\t//g ;s/ //g; s/$/\t\t\t 550 reject we do not accept Spammer/' >/$POSTFIDIR/$SUBDIRFILTER/$FILTER
#grep 'clickbrokenltd\|cupiblizza\|dreammedia4u\|ejisa\|gmail\|hotmail\|viasend\|norwaydate\|outlook\|silverancapital\|vipmediaonline'|\



/usr/sbin/postmap /$POSTFIDIR/$SUBDIRFILTER/$FILTER

/usr/sbin/postfix reload

sa-learn --spam $MAILDIR/*
