> On Apr 5, 2021, at 4:35 PM, Heiko Schlittermann via Exim-users <exim-users@???> wrote:
>
> Hi,
>
> Felipe Gasper via Exim-users <exim-users@???> (Mo 05 Apr 2021 19:55:39 CEST):
>>
>> It seems to leave certain (inconsequential?) whitespace changes in place that make it hard to compare a changeset in an automated way, e.g.:
>>
>> -----
>> - local_parts = ${if eq{$domain}{$primary_hostname}{+path_safe_localparts}{*}}
>> + local_parts = ${if eq {$domain} {$primary_hostname} {+path_safe_localparts} {*} }
>> -----
>
> I understand this, but we can't do that yet and there are no plans yet to
> implement it.
Understandable.
On another note, I’ve noted via the same parse that this in exim.conf:
-----
router_home_directory = ${extract{5}{::}{${lookup{${lookup{$domain_data}lsearch{/etc/userdomains}{$value}}}lsearch{/etc/passwd}{$value}}}}
-----
… gets parsed to this:
-------
router_home_directory = ${extract{5}{::}{${lookup passwd{${lookup{$domain_data}lsearch{/etc/userdomains}{$value}}}{$value}}}}
-------
^^ Note the conversion of the first “lookup” to a “lookup passwd”.
But, if I reflow the exim.conf a bit to:
-----
router_home_directory = ${extract \
{5} \
{::} \
{${lookup \
{${lookup \
{$domain_data} \
lsearch \
{/etc/userdomains} \
{$value} \
}} \
lsearch {/etc/passwd} \
{$value} \
} } \
}
-----
… then the conversion to “lookup passwd” doesn’t happen:
-----
router_home_directory = ${extract {5} {::} {${lookup {${lookup {$domain_data} lsearch {/etc/userdomains} {$value} }} lsearch{/etc/passwd} {$value} } } }
-----
Is this an optimization of some kind in Exim, which the breaking up into multiple lines is losing?
Thank you!
-F