I'm in the process of upgrading Exim from 1.62 to 1.92. I'm also
trying to add a director that uses an LDAP query. My LDAP server
is a umich 3.3 slapd with all of the relevant Critical Angle patches.
When I test my configuration using 'exim -bt <address>', it succeeds
when I run as myself, or when run under xxgdb; but fails when run as
root or as another non-privileged pseudo-user. The failure is:
test@??? cannot be resolved at this time:
virtual_owner director: search_find deferred: ldap_bind_s:
failed to bind the LDAP connection: Can't contact LDAP server
(I've introduced an extra line break after 'ldap_bind_s:' to
improve readability.)
The LDAP server log shows an apparently successful connection.
(I've removed the datestamp and hostname):
slapd[14018]: conn=12 fd=5 connection from unknown (127.0.0.1)
slapd[14018]: conn=12 op=0 BIND dn="" method=128
slapd[14018]: conn=12 op=0 RESULT err=0 tag=97 nentries=0
slapd[14018]: conn=12 op=1 UNBIND
slapd[14018]: conn=12 op=1 fd=5 closed errno=0
The slapd debug log also shows an apparently successful bind:
new connection on 5
conn=12 fd=5 connection from unknown (127.0.0.1)
activity on:
listening for connections on 3, activity on: 5r
before select active_threads 0
select activity
activity on: 5r
read activity on 5
ber_get_next
ber_get_next: tag 0x30 len 12 contents:
ber_dump: buf 0x383d0, ptr 0x383d0, end 0x383dc
current len 12, contents:
02 01 01 ` 07 02 01 02 04 00 80 00
do_bind
conn=12 op=0 BIND dn="" method=128
do_bind: version 2 dn () method 128
send_ldap_result 0::
ber_flush: 14 bytes to sd 5
0 0c 02 01 01 a 07 0a 01 00 04 00 04 00
conn=12 op=0 RESULT err=0 tag=97 nentries=0
listening for connections on 3, activity on: 5r
before select active_threads 0
select activity
activity on: 5r
read activity on 5
ber_get_next
ber_get_next: tag 0x30 len 5 contents:
ber_dump: buf 0x383d0, ptr 0x383d0, end 0x383d5
current len 5, contents:
02 01 02 B 00
do_unbind
conn=12 op=1 UNBIND
conn=12 op=1 fd=5 closed errno=0
listening for connections on 3, activity on:
before select active_threads 0
Particularly puzzling is why it succeeds when run under xxgdb, but
not when run stand-alone.
Any suggestions would be greatly appreciated.
-Pat
--
*** Exim information can be found at
http://www.exim.org/ ***