While searching the web and perdition-users mailing list archive, I did not found the answer to this case.
I encounter a little problem with libperditiondb_posix_regex .
The context is simple :
Perdition listening to IMAPS connections (from public network), with 3 backend IMAP servers on LAN.
The configuration is quite simple too ;) :
(this is running on Debian Wheezy , with Debian provided perdition package : version 1.19~rc5-1+b1)
imap_capability "IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES IDLE SORT QUOTA ACL ACL2=UNION STARTTLS"
# M|map_library FILENAME:
# Library to open that provides functions to look up the server for a
# M /usr/lib/libperditiondb_gdbm.so.0
# map_library ""
# m|map_library_opt STRING:
# String option for the map_library.
# (default "")
For the 2 first lines on transport.re, no problem : auth is forwarded without rewriting and works well.
For the last, I try to extract the first part of e-mail address to forward only this to the "publicmx" host.
Perdition has been restarted after update of "transport.re" (according to documentation : regex are processed only one, while starting the daemon)
But when auth is made on the backend server, the whole e-mail address is used ...
(It's useful to say that the dovecot IMAP service works well on this backend).
May 1 17:16:41 publicmx dovecot: auth-worker(19430): Error: bsdauth(myuser(a)stux.fr.eu.org,172.18.10.61): getpwnam() failed: Operation not permitted
May 1 17:16:43 publicmx dovecot: imap-login: Aborted login (auth failed, 1 attempts in 2 secs): user=<myuser(a)stux.fr.eu.org>, method=PLAIN, rip=172.18.10.61, lip=172.18.2.25, session=<AxT4Jlj4CwCsEgo9>
Did I made a mistake in configuration ?
My regex seems to match, but is it compliant for this use case ?
Thanks for all your replies ;) .