[Dovecot] libsieve problems / wishes

Steffen Kaiser skdovecot at smail.inf.fh-brs.de
Mon Feb 2 18:17:04 EET 2009


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hello,

I'm trying libsieve (853:42e154b8792e) to cope with our current 
installation, the following issues arise:

1) vacation addresses are compared case-sensitivly, e.g.:

vacation :addresses [ "Steffen.Kaiser at example.com" ] "";

it won't match "steffen.kaiser at ...".

attached patch makes a first shot about that problem, leaving:

1a) maybe one should lower-case :addresses argument at compile time and 
my_address at run-time and then use strcmp() again.

1b) duplicate checks are case-sensitive, too.
This is probably no big issue, because if the same person uses different 
variants of his/her mail address for sending, s/he does not deserve 
better.

1c) Suppression of replies to own mails are case-sensitive, too.
Well, many people I know test that "it just works" by sending themselves a 
mail. I would disable this check.

2) we have about 157 ways to write the domain part. Not all accounts
are available in all of them, but it's close to it. The old vacation
program we used prior to "cmusieve" didn't care about the domain unless
explicitly given. It was quite painful.

Attached patch adds a "domainless" variant of :addresses arguments in such 
way, that

vacation :addresses [ "Steffen.Kaiser" ] "";

matches any domain.

Ideally, it would be better to specify all valid domains, but perhaps one
can leave that for another approach with a different syntax, e.g. with
"@*" as domain? Maybe, there is a better approach.
Now there is possibility that common local parts are matched from alien
domains easily.

If to specify a set of "default" domains would be an option for libsieve,
what is the suggested way:
- - as user-option via dovecot.conf?
- - as admin-enforced Sieve-script that sets some internal variables?
aka using the multi-script capability
- - ???

3) Because I try to migrate from cmusieve v1.0, I have a name issue
with "imapflags".

README sec "* Supports all extensions provided by the original CMUSieve
plugin:" and sec "Implementation Status" explains that "imapflags"
is available.

This is not true entirly: "imapflags" is not, lib-sieve uses the name
"imap4flags" as defined by RFC.

So, it leaves me with two options:
3a) convert all user scripts and hack Horde-Ingo, or
3b) have libsieve accept the alias "imapflags" for the extension
"imap4flags".

Would it be worhtwhile for libsieve to implement aliases for extensions,
so that they are available in require by more than one name?

About Horde-Ingo, maybe they have an update to use "imap4flags", too,
but it looks like that I upgrade Dovecot before Horde.

Bye,

- -- 
Steffen Kaiser
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)

iQEVAwUBSYccg3WSIuGy1ktrAQLlaQf+NHtyBxMb3aqnaw58zapo3/5kgqMM4GA+
68el9d1CK4URjuk9io3MBsSzEJ4lRy6VFHNLw0jyNEnZp7l0vv5UoiK/+af7LCW5
H2T/qYL+lG/ul870t0/3q5wHmtrriAGQqE215C1u5/trJRX/sQLzDq1tbOtV4/vQ
xUa8P0TXvCsgGSzCCmNiU0AenTIRGnxo+sCiyxnDKhgmWph/t06GYHX77CKwumK8
O57rh3RD9hA5yjicTbEZVLzeDDPEmCFliiSR6qMukfxOwX6LIxqhfw8n3cmSm8+X
QyK6d/pBxy6EC14XhRQ7Jjtse+gWraiVJ/kcXKuW8sNPphtrGM1fdQ==
=uuB6
-----END PGP SIGNATURE-----
-------------- next part --------------
A non-text attachment was scrubbed...
Name: libsieve-patches2.tgz
Type: application/x-gtar
Size: 1009 bytes
Desc: 
Url : http://dovecot.org/pipermail/dovecot/attachments/20090202/9740ff7c/attachment.gtar 


More information about the dovecot mailing list