Well, I tried getting dbmail up and running with sieve scripts this weekend.
First I had trouble compiling, because the svn trunk doesn't contain the
configure script, and I couldn't find the right version of automake - I
kept getting undefined symbols in autoreconf.
I tried going for snapshots, but they appear to be older than 2.1.5. I
finaly settled for 2.1.5,
and compiled that.
After I got it compiled, and upgraded the database, I got in to a crazy
situation: when I started dbmail-imapd from the command line, it started
forking like crazy the moment it got it's first IMAP request. Finaly I
had to reboot my server. Apparently the init scripts start the script
right, but I'd still prefer it if it did something sane when started
from the command line
without any arguments.
I tried two sieve frontends (both web-based): websieve dies immediately
"premature end of script headers" - probably means the author had a more
forgiving apache setup than I do, and didn't bother to print out the
"Content-type" header every time.
Smartsieve appears to work, but I only managed to add rules with it -
when I tried to change a rule, it appeared to accept it, but I never saw
the changes reflected anywhere. (And it is unclear to me if I should
keep all my rules in one script, or partition them by some logical scheme).
At least once (I think it was when I deleted an active script, but I'm
not sure) I managed to get into a seemingly infinite loop in
dbmail-timsieved (strace showed it trying to constantly read 1024 bytes
from somewhere, and getting back 0).
Most of the rules seem to work, except that I seem to be completely
unable to make this one work:
if allof (address :contains ["From"] "smc2804wbr", header :contains
"subject" "barricade alert message!!") {
fileinto "Trash";
}
I'll enable high trace and report back when I see what's happening when
a message like that arrives.