sievec

Robert Moskowitz rgm at htt-consult.com
Fri Mar 17 16:02:58 EET 2017



On 03/17/2017 12:07 AM, Doug Barton wrote:
>
> Not precisely. You want to remove the 'else' in there, as the clause 
> you have will do the opposite of what you intend. Also note that I 
> removed your superfluous square brackets.
>
>> require "fileinto";
>>   if header :contains "X-Spam-Flag" "YES" {
>>     fileinto "Spam";
>>   }
>>   if header :contains "subject" "***SPAM***" {
>>     fileinto "Spam";
>>   }
>
> This is a pretty good tutorial on the syntax and options for Sieve. 
> Given your intended purpose you should pay special attention to the 
> 'create' modifier for 'fileinto'. Also, I would accomplish both things 
> in the same rule using 'anyof' which should be slightly more efficient 
> (which could make a big difference to server load depending on how 
> many users you are supporting).
>
> https://support.tigertech.net/sieve

Reading this and 'man sievec'...

Here is how I have modified your script above:

require "fileinto";
if anyof
     (
         header :contains "X-Spam-Flag" "YES",
         header :contains "subject" "***SPAM***"
     )
{
     fileinto "Spam";
}

And for sievec, I still use:

sieve_before = /home/sieve/globalfilter.sieve

dovecot will find the /home/sieve/globalfilter.svbin and proceed with 
that.  I don't have to specify the svbin in the sieve_before option.

thanks

Bob




More information about the dovecot mailing list