[Dovecot] v2.0 configuration parsing

Patrick Nagel patrick.nagel at star-group.net
Tue Aug 11 06:24:55 EEST 2009


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

I completely agree with Michael's opinion.

Patrick.

On 2009-08-11 02:22, Michael Orlitzky wrote:
> Timo Sirainen wrote:
>> I'm trying to figure out how exactly v2.0 should be parsing
>> configuration files. The most annoying part is if it should always just
>> "use whatever comes first in config" or try some kind of a "use most
>> specific rule". The "most specific" kind of makes more sense initially,
>> but then you start wondering how to handle e.g.:
[...]
> 
> I think the easiest scheme to keep in my brain would be to evaluate the
> blocks, in order, as if they were branches in code. Fooling around with
> an arbitrary order of evaluation/specificity would be a recipe for
> disaster (see, for example, any CSS engine).
> 
> So, something like,
> 
>   protocol imap {
>     remote_ip 192.168.0.0/16 {
>       foo = foo
>     }
>   }
> 
> would translate to,
> 
>   if (protocol == imap) {
>     if (remote_ip matches 192.168.0.0/16) {
>       foo = foo
>     }
>   }
> 
> and then later,
> 
>   remote_ip 192.168.0.0/24 {
>     foo = bar
>   }
> 
> would set the value of 'foo' to 'bar', since it would evaluate in a
> similar fashion, and comes later in the config file.
> 
> It's easy to explain, easy to implement, and easy to debug. Ultimately,
> the users are going to have to understand how it works in order to
> configure Dovecot properly. "Put the most general rules first, and then
> override them" is a practice with which most of us are already familiar.


- -- 
STAR Software (Shanghai) Co., Ltd.              http://www.star-group.net/
Phone:    +86 (21) 3462 7688 x 826               Fax:   +86 (21) 3462 7779

PGP key:  E883A005 https://stshacom1.star-china.net/keys/patrick_nagel.asc
Fingerprint:             E09A D65E 855F B334 E5C3 5386 EF23 20FC E883 A005
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)
Comment: Using GnuPG with Fedora - http://enigmail.mozdev.org/

iEYEARECAAYFAkqA5IEACgkQ7yMg/OiDoAWaiQCgk1S6lu6JQTcg5VXzwzJxrjCG
AXcAoLD2xvbfFoMUrSW+3JrC+PA7c8Fz
=jChR
-----END PGP SIGNATURE-----


More information about the dovecot mailing list