[exim] problem with condition an lookup

Page principale
Supprimer ce message
Répondre à ce message
Auteur: Pascal Bourdais
Date:  
À: exim-users
Sujet: [exim] problem with condition an lookup

Hi list,

I have a problem with this condition in a router.

condition = and { \
              { ${lookup ldap {ldap:///LDAP_BIND?mail?sub?(&LDAP_COND(departmentNumber=DOMAIN))}{true}{false}} } \
              { ! def:h_X-From71:} } \
            }



If I test it, (with the values for macro), it gives

exim -be -Mset 1Mga90-00058W-NF 'and { { ${lookup ldap {ldap:///LDAP_BIND?mail?sub?(&LDAP_COND(departmentNumber=010))}{true}{false}} } { ! def:h_X-From71: }'
and { { true } { ! def:h_X-From71: }

with a mail in which the header is defined, exim -d -M <...> give this
result. It don't seems to do any test on the header.

Can someone points me on what i'm missing ?

Thanks,

Pascal

--- debut trace ---
--------> temp_copy router <--------
local_part=xxx domain=xxx
checking domains
xxx in "+managed_domains"? yes (matched "+managed_domains")
checking require_files
file check: /usr/local/exim/ar/${local_part}/redirect
expanded file: /usr/local/exim/ar/xxx/redirect
stat() yielded 0
checking "condition"
search_open: ldap "NULL"
search_find: file="NULL"
key="ldap:///LDAP_BIND?mail?sub?(&LDAP_COND(departmentNumber=010))" partial=-1 affix=NULL starflags=0
LRU list:
internal_search_find: file="NULL"
type=ldap key="..."
database lookup required for ldap:///...
LDAP parameters: user=NULL pass=NULL size=0 time=0 connect=0 dereference=0 referrals=on
perform_ldap_search: ldap URL = "ldap:///..."
server=localhost port=0 sizelimit=0 timelimit=0 tcplimit=0
after ldap_url_parse: host=localhost port=0
ldap_initialize with URL ldap://localhost:389/
initialized for LDAP (v3) server localhost:389
LDAP_OPT_X_TLS_TRY set
binding with user=NULL password=NULL
Start search
ldap_result loop
LDAP entry loop
LDAP attr loop mail:xxx
search ended by ldap_result yielding 101
ldap_parse_result: 0
ldap_parse_result yielded 0: Success
LDAP search: returning: xxx
lookup yielded: xxx
calling temp_copy router
rda_interpret (string): ${lookup{value}lsearch{/usr/local/exim/ar/${local_part}/redirect}}
search_open: lsearch "/usr/local/exim/ar/xxx/redirect"
search_find: file="/usr/local/exim/ar/xxx/redirect"
key="value" partial=-1 affix=NULL starflags=0
LRU list:
:/usr/local/exim/ar/xxx/redirect
End
internal_search_find: file="/usr/local/exim/ar/xxx/redirect"
type=lsearch key="value"
file lookup required for value
in /usr/local/exim/ar/xxx/redirect
lookup yielded: xxx
expanded: xxx
file is not a filter file
parse_forward_list: xxx
extract item: xxx
temp_copy router generated xxx
errors_to=NULL transport=NULL
uid=unset gid=unset home=NULL
routed by temp_copy router (unseen)
envelope to: xxx
transport: <none>
"unseen" set: replicated xxx
locking /var/spool/exim/db/retry.lockfile
locked /var/spool/exim/db/retry.lockfile
EXIM_DBOPEN(/var/spool/exim/db/retry)
returned from EXIM_DBOPEN
opened hints database /var/spool/exim/db/retry: flags=O_RDONLY