To make it work the current way, is simple. --- a/src/lmtp/commands.c 2013-02-05 18:31:36.000000000 -0500 +++ b/src/lmtp/commands.c 2014-01-28 18:15:01.011677816 -0500 @@ -387,7 +387,7 @@ return; domain = strchr(address, '@'); - p = strstr(address, client->unexpanded_lda_set->recipient_delimiter); + p = strpbrk(address, client->unexpanded_lda_set->recipient_delimiter); if (p != NULL && (domain == NULL || p < domain)) { /* user+detail@domain */ *username_r = t_strdup_until(*username_r, p); I would love for it though, to lookup and see if an mailbox exists with the delim first, then if it doesn't lookup just the username part. Quoting Andrew Ray <andrew@freedomlives.net>:
Hi,
It would be nice if the recipient_delimiter configuration option supported multiple recipient delimiters as Postfix now does. e.g. now if I set: recipient_delimiter = +- in Postfix, then test-extension@sample.com and test+extension@sample.com are both recognized. But if I set: recipient_delimiter = +- in Dovecot, neither of the above are recognized and instead test+-extension@sample.com is valid.
Well, presently this feature isn't that important to me, but I imagine it could be a source of confusion for people who are migrating from say qmail to postfix (as I am doing) and notice Postfix's cool ability to support both types of delimiters and assume Dovecot will as well (as I did).
Thanks, Andrew Ray
--
Andrew Ray +1 404-418-5443 +421 (0) 917 832 253 http://guns.freedomlives.net/