A regra acima está malformada e não funcionará.
Regras do SpamAssassin são regulares expressões , então você só precisa escapar:
body TEN_ASTERISKS /\*\*\*\*\*\*\*\*\*\*/
score TEN_ASTERISKS 0.5
describe TEN_ASTERISKS Message body contains ten asterisks.
Além disso, os parênteses são desnecessários. Eles formam um grupo de captura que é armazenado na memória, o que (supondo que você veja um monte de mensagens cheias de asteriscos) poderia ter um pedágio em seu servidor.
(Você também pode fazer body TEN_ASTERISKS /\*{10}/
, mas eu queria fazer um exemplo mais simples. Expressões regulares são muito poderosas.)
Para associar dez asteriscos separados, você precisa de tflags multiple
:
body __HAS_ASTERISK /\*/
tflags __HAS_ASTERISK multiple maxhits=11
meta TEN_ASTERISKS __HAS_ASTERISK > 10
score TEN_ASTERISKS 0.5
describe TEN_ASTERISKS Message body contains ten asterisks.
A parte maxhits=11
é uma otimização. Ele diz ao SpamAssassin para parar a contagem ( tflags multiple
é caro para ser executado).