Hi,
Phil, i know your wishlist is very long, but could you place another
item on it?
Problem:
I'm using xams to manage my exim-server (4.10), it runs fun, but under
load, the mysql-db is to slow, so i did some scripting work, and
reconfig of exim, to make it work with cdb-files, which are dumped from
the mysql-tables.
The entries in the cdb-file is indexed by the email-address, and
everything is fine, i use macros to make the config a little bit more
readable, now i use these macros.
USERENTRY = ${lookup {$local_part@$domain} cdb {/etc/exim/pusers.cdb}}
USERDEFAULTENTRY = ${lookup {$local_part@$domain} cdb*@ \
{/etc/exim/pusers.cdb}}
USERPASSPLAIN = ${extract {pass} {${lookup {$2} cdb \
{/etc/exim/pusers.cdb}}}}
USERPASSLOGIN = ${extract {pass} {${lookup {$1} cdb \
{/etc/exim/pusers.cdb}}}}
USERQUOTA = ${extract {quota} {USERENTRY}}
USERALIAS = ${extract {forward} {USERDEFAULTENTRY}}
SITEHOME = /var/imap/${extract {site} {USERENTRY}}
with an extension of the macros, to use them like C-makros, this could
be stripped down to
USERENTRY(key) = ${lookup {$key} cdb \
{/etc/exim/pusers.cdb}}
USERDEFAULTENTRY = ${lookup {$local_part@$domain} cdb*@ \
{/etc/exim/pusers.cdb}}
USERALIAS = ${extract {forward} {USERDEFAULTENTRY}}
USERDATA(field,key) = ${extract {$field} {USERENTRY($key)}}
i think such things could make the config-file much cleaner, and more
readable, but i don't know if it's possible to implement this that easily.
ciao