#!/bin/rc# do not edit. Edit /sys/src/cmd/mail2fs/Spam instead.#TMP=/tmp/spam.$sysname.$pidPATTERNS=/mail/box/$user/patternsfn isspam @{ if (test -e $1/text){ { echo '# hash table' cat $1/text | upas/msgtok | grep -v '^....................(.*) ' | sed 's/$/ 1/' } >$TMP.tok x=`{upas/bayes -k _prof.mbox _prof.spam ~ $TMP.tok} where=$x(1) prob=$x(2) if (~ $where *spam*) status='' if not status='not spam' } if not status='not spam' } fn isblocked @{ if (test -e $PATTERNS && grep -isf $PATTERNS $1/text ){ status='' } if not status='not spam' } if (~ $#* 2 && ~ $1 -f){ m=$2 nm=`{echo $m | sed 's|(.*)/([as]\.)?(.*)|\1/s.\3|'} mv $m $nm ; chmod +t $nm exit ''} if (~ $#* 0) mails=`{echo */[0-9]*}if not mails=$*cwd=`{pwd}mails=$cwd/^$mailscd /mail/box/$userfor (m in $mails){ if (isblocked $m){ echo Spam -f $m } if not { if (isspam $m){ echo Spam -f $m } }}exit ''
#!/bin/rc
# do not edit. Edit /sys/src/cmd/mail2fs/Spam instead.
#
TMP=/tmp/spam.$sysname.$pid
PATTERNS=/mail/box/$user/patterns
fn isspam @{
if (test -e $1/text){
{
echo '# hash table'
cat $1/text | upas/msgtok |
grep -v '^....................(.*) ' |
sed 's/$/ 1/'
} >$TMP.tok
x=`{upas/bayes -k _prof.mbox _prof.spam ~ $TMP.tok}
where=$x(1)
prob=$x(2)
if (~ $where *spam*)
status=''
if not
status='not spam'
}
if not
status='not spam'
}
fn isblocked @{
if (test -e $PATTERNS && grep -isf $PATTERNS $1/text ){
status=''
}
if not
status='not spam'
}
if (~ $#* 2 && ~ $1 -f){
m=$2
nm=`{echo $m | sed 's|(.*)/([as]\.)?(.*)|\1/s.\3|'}
mv $m $nm ; chmod +t $nm
exit ''
}
if (~ $#* 0)
mails=`{echo */[0-9]*}
if not
mails=$*
cwd=`{pwd}
mails=$cwd/^$mails
cd /mail/box/$user
for (m in $mails){
if (isblocked $m){
echo Spam -f $m
}
if not {
if (isspam $m){
echo Spam -f $m
}
}
}
exit ''