1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65
|
require [ "fileinto", "redirect" ];
require [ "comparator-i;octet", "comparator-i;ascii-casemap" ];
# Idiom to determine existence of a header.
if header :contains [ "x-sweetheart", "x-unlikely" ] ""
{
stop;
}
if header :is "return-PATH" "<>"
{
fileinto "mbox.complex.null-path";
}
if header :matches "newsgroups" "comp.os.*"
{
fileinto "mbox.complex.news-comp-os";
}
elsif exists "newsgroups"
{
fileinto "mbox.complex.news";
}
if size :over 10000
{
fileinto "mbox.complex.large";
# redirect "root@microsoft.com";
}
elsif allof ( size :over 2000 , size :under 10000 )
{
fileinto "mbox.complex.largeish";
}
elsif size :over 100
{
fileinto "mbox.complex.smallish";
}
else
{
# Too small to bother reading.
discard;
}
if exists "x-redirect"
{
redirect "sroberts@uniserve.com";
}
# if header :contains ["to", "cc"] "bug-mailutils@gnu.org"
# {
# fileinto "./mbox.mailutils.out";
# keep;
# if header :contains ["to", "cc"] "bug-mailutils@gnu.org"
# {
# fileinto "./mbox.mailutils.out";
# keep;
# }
# else
# {
# stop;
# discard;
# }
# Keep (don't delete) messages, even if filed into another mailbox.
keep;
|