[Dovecot] sieve spamtest extension
Nikita Koshikov
koshikov at gmail.com
Sat May 15 16:34:55 EEST 2010
Hello Stephan,
First of all, thanks for time you spent implementing this useful extension.
I have found some ugly behavior with such config:
sieve_extensions = +notify +spamtest
sieve_spamtest_status_type = score
sieve_spamtest_status_header = X-Spam-Scan-Score: (-?[[:digit:]]+\.[[:digit:]])
sieve_spamtest_max_value = 10
Sieve:
require ["fileinto","envelope","imap4flags","spamtest","relational","comparator-i;ascii-numeric"];
# rule:[spam]
if anyof (spamtest :value "ge" :comparator "i;ascii-numeric" "6")
{
fileinto "Spam";
}
If X-Spam-Scan-Score have 6-9 digit after dot - the first one ignored, thus
X-Spam-Scan-Score: 3.6 -> "ge" skips. #right
X-Spam-Scan-Score: 3.8 -> "ge" works. #wrong
X-Spam-Scan-Score: 5.9 -> "ge" works. #wrong
X-Spam-Scan-Score: 6.0 -> "ge" works. #right
X-Spam-Scan-Score: 6.9 -> "ge" works. #right
X-Spam-Scan-Score: 7.3 -> "ge" works. #right
If the rule modified to (spamtest :value "ge" :comparator "i;ascii-numeric" "6.0") everything works as expected.
One more thing - sieve-test. I couldn't test my scripts with it:
# sieve-test -x +spamtest -t sieve spam.txt
00000007: SPAMTEST test
00000007: spamtest: extension not configured
00000013: JMPFALSE (false)
Performed actions:
(none)
Implicit keep:
* store message in folder: INBOX
Info: final result: success
More information about the dovecot
mailing list