Re: [exim] $local_part_suffix not set in router condition wh…

Page principale
Supprimer ce message
Répondre à ce message
Auteur: Magnus Holmgren
Date:  
À: exim-users
Sujet: Re: [exim] $local_part_suffix not set in router condition while verifying? (4.67)
On Saturday 28 July 2007 18:31, Lutz Preßler wrote:
> this may be a bug: with 4.67 the following router
>
>  localuser_missingfolder:
>    driver = redirect
>    local_part_suffix = +*
>    condition = ${if exists {MAIL/$domain/USERS}\
>                {${lookup{$local_part}lsearch{MAIL/$domain/USERS}\
>                {${if !exists
> {MAIL/$domain/$local_part/.${substr_1:${lc:$local_part_suffix}}}}}}}}
> allow_fail
>    data = :fail:Unknown mailbox folder

>
> is not "behaving" as I want it to. For local adresses with +-suffix it
> should fail routing if the corresponding delivery folder is not existing
> yet. This does work correctly in address testing mode (and a later router
> with local_part_suffix_optional is accepting the other ones and the
> delivery transport is using $local_part_suffix just fine). But it seems not
> to work while verifying. While evaluating condition the suffix is stipped
> off $local_part, but $local_part_suffix not set. At least the condition is
> true for known users with existing (and nonexisting) suffixes - and so they
> are all rejected.


I tested with the following simple router:

test:
driver = redirect
local_part_suffix = %*
condition = ${if eq {$local_part_suffix} {%foo}}
data = :blackhole:

and it worked as expected. Have you tried running exim with -d+expand, or
even -d+all, to see exactly what's happening?

-- 
Magnus Holmgren        holmgren@???
                       (No Cc of list mail needed, thanks)


"Exim is better at being younger, whereas sendmail is better for
Scrabble (50 point bonus for clearing your rack)" -- Dave Evans