[Date Prev][Date Next] [Chronological] [Thread] [Top]

slapd v2.3.11 hangs/segfaults on SASL bind



Hi there.

We've been using OpenLDAP with back-sql to present data from MySQL 
for quite some time, and everything's been working great, including 
SASLv2 binds.

Due to a recent requirement for read/write capability (and future 
development) we're switching to a PostgreSQL backend instead.  
Everything works okay, except that the slapd process hangs 
indefinitely (when launched in the background) or segfaults (when 
launched with -d n) if SASL authentication is attempted.  Simple auth 
works fine.

Here are the last few lines from the slapd debug output:

<==backsql_search()
<==slap_sasl2dn: Converted SASL name to cn=nels lindquist,o=maei,c=ca
slap_sasl_getdn: dn:id converted to cn=nels lindquist,o=maei,c=ca
SASL Canonicalize [conn=7]: slapAuthcDN="cn=nels 
lindquist,o=maei,c=ca"
SASL Canonicalize [conn=7]: authzid="nels"
SASL proxy authorize [conn=7]: authcid="nels" authzid="nels"

I also managed to get a backtrace from gdb:

[Switching to Thread -1228420176 (LWP 17259)]
0x0018977b in strlen () from /lib/tls/libc.so.6
(gdb) bt
#0  0x0018977b in strlen () from /lib/tls/libc.so.6
#1  0x00157611 in vfprintf () from /lib/tls/libc.so.6
#2  0x00178d14 in vsnprintf () from /lib/tls/libc.so.6
#3  0x080f4e58 in lutil_debug (debug=7, level=1191210597, 
fmt=0x810ce5c "==>slap_sasl_authorized: can %s become %s?\n") at     
debug.c:83  
#4  0x0808fb77 in slap_sasl_authorized (op=0x9777138,     
authcDN=0xb6c7c678, authzDN=0xb6c7c670) at saslauthz.c:2074  
#5  0x08093889 in slap_sasl_authorize (sconn=0x9776370,     
context=0xb7580a18, requested_user=0x9776c80 "nels", rlen=4, 
auth_identity=0x9776d81 "nels", alen=4, def_realm=0x0, urlen=0, 
props=0x97775f8) at sasl.c:697  
#6  0x00b7283e in sasl_server_new () from /usr/lib/libsasl2.so.2
#7  0x00b72e3f in sasl_server_step () from /usr/lib/libsasl2.so.2
#8  0x0809450b in slap_sasl_bind (op=0x0, rs=0x9776370) at 
sasl.c:1380
#9  0x08072718 in fe_op_bind (op=0x9777138, rs=0xb6c7c870) at 
bind.c:276
#10 0x08071d99 in do_bind (op=0x9777138, rs=0xb6c7c870) at bind.c:200
#11 0x0805bd4c in connection_operation (ctx=0xb6c7c8f0, 
arg_v=0x9777138) at connection.c:1061  
#12 0x080d71a2 in ldap_int_thread_pool_wrapper (xpool=0x97246b0) at 
tpool.c:485
#13 0x00960dd8 in start_thread () from /lib/tls/libpthread.so.0
#14 0x001edd2a in clone () from /lib/tls/libc.so.6

Any advice would be much appreciated!

----
Nels Lindquist <*>
Information Systems Manager
Morningstar Air Express Inc.