Q0626

Nigel Metheringham edited this page Nov 29, 2012 · 2 revisions
Clone this wiki locally

Q0626

Question

Exim can route local parts independent of their case, but the Cyrus LMTP daemon requires the correct case. How can I fix this?

Answer

You need to rewrite the local part to the correct case before running the router that routes to Cyrus. For example, if you require all lower case, and your router is called local_user, put this router in front of it:

lowercase_local:
  driver = redirect
  redirect_router = local_user
  domains = +local_domains
  data = ${lc:$local_part}@$domain

The setting of redirect_router causes processing of the rewritten address to start at the next router, instead of the first router. See also `../Q0630`_ and `FAQ/Routing_for_local_delivery/Q0414`_, and see C045 for a more complete Cyrus configuration.