[Dovecot] MANAGESIEVE patch v4 for dovecot 1.0.rc28 / problems

Stephan Bosch sirius at drunksnipers.com
Sun Apr 8 21:50:13 EEST 2007


Stephan Bosch schreef:
> Stephan Bosch wrote:
>> This script states:
>> require [""];
>>
>> This is not valid sieve to my knowledge and it doesn't serve any 
>> useful purpose: there is no empty sieve extension, so this seems to be 
>> a bug in avelsieve. Lib-CMUSieve correctly reports an error.
>>
>> Btw, I tested avelsieve myself as well (to test yet another sieve 
>> client), but it also caused a syntax error:
>>
>> NO "line 6: syntax error, unexpected ']', expecting STRING"
>>
>> I don't yet know what caused this, but I intend to find out as soon as 
>> I get to sniff the TCP communication properly.
> Found it. Avelsieve incorrectly assumes the SIEVE capabilities to be 
> listed in lowercase. Dovecot-managesieve lists them in uppercase.
Just to be sure I reread the MANAGESIEVE (v07) draft specification. It 
gives an example of the SIEVE capability response in UPPER CASE (it says 
nothing explicitly), but it also refers to the SIEVE specification, 
which says:

    Any extensions to this language MUST define a capability string that
    uniquely identifies that extension.  Capability string are case-
    sensitive; for example, "foo" and "FOO" are different capabilities.
    If a new version of an extension changes the functionality of a
    previously defined extension, it MUST use a different name.
    Extensions may register a set of related capabilities by registering
    just a unique prefix for them.  The "comparator-" prefix is an
    example of this.  The prefix MUST end with a "-" and MUST NOT overlap
    any existing registrations.

So, I seems that I am pretty much wrong in this case. I'll change the 
code and notify the maintainer of the managesieve specification. Until I 
publish a new patch, the patch to avelsieve will work however.

Regards,

-- 
Stephan Bosch
stephan at rename-it.nl
IRC: Freenode, #dovecot, S[r]us




More information about the dovecot mailing list