dovecot 2.2.15 script_after not executed
Portase Florin
portase.florin at medianetork.ro
Wed Feb 11 21:37:59 UTC 2015
On 2/11/2015 8:41 PM, Stephan Bosch wrote:
> On 2/11/2015 7:34 PM, Florin Portase wrote:
>> Hello guys,
>>
>> I'm having troubles making "script_after" to exec sieve scripts::
>>
> Keep in mind that the sieve_after script is only executed when the
> "keep" action [1] is executed or when the implicit "keep" [2] is still
> active, meaning that the user didn't give the mail an explicit destination.
>
> If the user does perform actions like fileinto or redirect without a
> `:copy' argument [3] and without performing an explicit "keep" [2]
> anywhere, the subsequent sieve_after scripts are not executed [4].
>
> Therefore sieve_after is only useful to provide default behavior for
> when the user has no explicit rule for what should happen to the e-mail.
>
>> `/home/vpopmail/domains/medianetork.ro/portase.florin/Maildir/sieve/dovecot1.sieve;name=lters'
>> Feb 11 19:16:10 lda(portase.florin at medianetork.ro): Info: sieve:
>> msgid=AAa=MneAO6+wwLh3M8nz1z6Mi2Ae2aDMdrSakJA_-PYCwCvbCA at mail.gmail.com>:
>> stored mail into mailbox 'INBOX.Gmail'
> This was probably done using a `fileinto "INBOX.Gmail";' command. This
> cancels the implicit keep.
>
> To force executing sieve_after, the user needs to add a `:copy' argument
> to that fileinto command or a `keep;' action should be executed.
>
> Administrator policies that always need to be executed must be placed
> in a sieve_before script.
>
> For more information:
>
> [1]: https://tools.ietf.org/html/rfc5228#section-4.3
> [2]: https://tools.ietf.org/html/rfc5228#section-2.10.2
> [3]: https://tools.ietf.org/html/rfc3894
> [4]: http://tools.ietf.org/html/draft-degener-sieve-multiscript-00
>
> Regards,
>
> Stephan.
>
Thanks Stephan,
However still have one small issue:
fileter.sieve
==========
# rule:[amavis]
if anyof (address :contains "From" "amavis",
address :contains "Cc" "amavis-users at amavis.org",
address :contains "To" "amavis-users at amavis.org")
{
fileinto "INBOX.lists.amavisd-new";
}
# rule:[xxx_gmail]
elsif anyof (header :contains "From" "xxx at gmail")
{
setflag "\\Flagged";
fileinto "INBOX.Gmail";
keep;
}
In this case, both all 3 sieve are executed: global one + filters +
vacation.
But as side note: when mail come from gmail account,
- 1st message is sent to inbox.gmail
- 2nd vacation response is sent
-3rd message is copied once more directly into INBOX
Now, if I modify:
fileinto :copy INBOX.Gmail;
The message is sent to INBOX.Gmail and also copied to INBOX
How can I avoid such behavior ?
More information about the dovecot
mailing list