[exim] String manipulation in require

Top Page
Delete this message
Reply to this message
Author: geza
Date:  
To: exim-users
Subject: [exim] String manipulation in require
Hi,

Sorry if this is a newbee question, but I'm not (yet) a longtime exim user.
I've googled for it without too much luck.
I have a exim version 4.63 (on debian etch) delivering to a cyrus lmtp
server via a unix socket. To check if the mailbox exist before accepting
mail I have the following in my router configuration:

require_files=/var/spool/cyrus/mail/${lc::${substr_0_1::$local_part}}/user/${lc::$local_part}
no_more

Everthing is going well except one minor problem. I have a few users
having a dot in their username I've already configured cyrus to accept
this by using unixhierachysep: yes (I had it working before I've migrated
to exim from postfix). In this case cyrus maps internaly
firstname.lastname users to firstname^lastname, so their mailbox isn't at
/var/spool/cyrus/mail/${lc::${substr_0_1::$local_part}}/user/${lc::$local_part}
but at something like
/var/spool/cyrus/mail/${lc::${substr_0_1::$local_part}}/user/${lc::$local_part
| sed -e s/./^/g}

the problem is I don't know how could I specify a script for checking if
the mailbox exist :-(.
In this setup users with dots in their username don't recive any e-mail,
because the require_files report unexistent mailbox.

T.I.A

Geza