Deleting an active sieve script leaves sieve unfunctional

Oscar del Rio delrio at mie.utoronto.ca
Mon Jul 5 21:47:31 EEST 2021


On 2021-07-05 10:29 a.m., Tobias Leupold wrote:
>
>    require ["include"];
>       include :personal "some-script";
>    include :personal "some-other-script";
>
> Now if I delete "some-script", it's actually deleted, but USER.sieve 
> is not
> updated (and still contains 'include :personal "some-script";').
>
> active-script.sieve.log:
>
>    sieve: info: started log at Jul 05 14:57:54.
>    USER: line 12: error: included personal script 'some_script' does not
>        exist.
>    USER: error: validation failed.
>
>
> So the question is now: Is this a KMail bug, a Doveceot bug, or is the 
> server
> misconfigured?!
>

IMHO the client (KMail) should take care of it.
Perhaps it could also add the "optional" flag in the "include" statement

include :personal :optional "some-script";

https://datatracker.ietf.org/doc/html/rfc6609

> 3.2.  Control Structure "include"
>
>       Usage:  include [LOCATION] [":once"] [":optional"] <value: string>
>               LOCATION = ":personal" / ":global"
>
> The ":optional" parameter indicates that the script may be missing.
> Ordinarily, an implementation MUST generate an error during execution
> if an "include" command specifies a script that does not exist. When
> ":optional" is specified, implementations MUST NOT generate an error
> for a missing script, and MUST continue as if the "include" command
> had not been present.





More information about the dovecot mailing list