Re: [exim] caseful $local_part in transport

Top Page
Delete this message
Reply to this message
Author: Phil Pennock
Date:  
To: exim-users
Subject: Re: [exim] caseful $local_part in transport
On 2013-05-20 at 14:53 +0200, Heiko Schlittermann wrote:
> If you use the router option caseful_local_part, the unchanged (caseful)
> local_part seems to be used for the transport too. (I write "seems", as
> I can't find a relevant note in the spec file.


----------------------------8< cut here >8------------------------------
+------------------+------------+-------------+--------------+
|caseful_local_part|Use: routers|Type: boolean|Default: false|
+------------------+------------+-------------+--------------+

By default, routers handle the local parts of addresses in a case-insensitive
manner, though the actual case is preserved for transmission with the message.
If you want the case of letters to be significant in a router, you must set
this option true. For individual router options that contain address or local
part lists (for example, local_parts), case-sensitive matching can be turned on
by "+caseful" as a list item. See section 10.20 for more details.

The value of the $local_part variable is forced to lower case while a router is
running unless caseful_local_part is set. When a router assigns an address to a
transport, the value of $local_part when the transport runs is the same as it
was in the router. Similarly, when a router generates child addresses by
aliasing or forwarding, the values of $original_local_part and
$parent_local_part are those that were used by the redirecting router.

[...]
----------------------------8< cut here >8------------------------------

"the value of $local_part when the transport runs is the same as it
was in the router"

-Phil