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

slapd crash (ITS#38)



Full_Name: Heiko W.Rupp
Version: 1.1.2 (-release)
OS: NetBSd 1.3.2
URL: ftp://ftp.openldap.org/incoming/
Submission from: (NULL) (193.141.42.125)


Slapd crashes => dn2id( "o=Xlink GmbH,c=DE" )
=> ldbm_cache_open( "/var/db/ldap/dn2id.dbb", 514, 600 )
<= ldbm_cache_open (cache 0)
<= dn2id 1
=> id2entry_r( 1 )
====> cache_find_entry_dn2id: found id: 1 rw: 0
<= id2entry_r 0x2e480 (cache)
<= matched o=Xlink GmbH,c=DE
<= remainder cn=Heiko,
<= checking for alias for dn o=Xlink GmbH, c=DE
<= l&g we have o=Xlink GmbH,c=DE vs o=Xlink GmbH, c=DE 
====> cache_return_entry_r
<= expanded to cn=Heiko,o=Xlink GmbH, c=DE
====> cache_return_entry_r
dn2entry_r: dn: cn=Heiko,o=Xlink GmbH, c=DE
=> dn2id( "cn=Heiko,o=Xlink GmbH, c=DE" )
=> ldbm_cache_open( "/var/db/ldap/dn2id.dbb", 514, 600 )
<= ldbm_cache_open (cache 0)
<= dn2id NOID
dn2entry_r: dn: o=Xlink GmbH, c=DE
=> dn2id( "o=Xlink GmbH, c=DE" )
=> ldbm_cache_open( "/var/db/ldap/dn2id.dbb", 514, 600 )
<= ldbm_cache_open (cache 0)
<= dn2id 1
=> id2entry_r( 1 )
====> cache_find_entry_dn2id: found id: 1 rw: 0
<= id2entry_r 0x2e480 (cache)
====> cache_return_entry_r
dn2entry_r: dn: o=Xlink GmbH, c=DE
=> dn2id( "o=Xlink GmbH, c=DE" )
=> ldbm_cache_open( "/var/db/ldap/dn2id.dbb", 514, 600 )
<= ldbm_cache_open (cache 0)
<= dn2id 1
=> id2entry_r( 1 )
====> cache_find_entry_dn2id: found id: 1 rw: 0
<= id2entry_r 0x2e480 (cache)
<= matched o=Xlink GmbH, c=DE
<= remainder cn=Heiko,
<= checking for alias for dn o=Xlink GmbH, c=DE
<= l&g we have o=Xlink GmbH, c=DE vs o=Xlink GmbH, c=DE 
====> cache_return_entry_rshanagary# gdb /usr/local/libexec/slapd /slapd.core

====> cache_return_entry_r
dn2entry_r: dn: (null)#0  0x40080d81 in strdup ()
(gdb) bt
#0  0x40080d81 in strdup ()
#1  0xbe85 in ch_strdup (string=0x0) at ch_malloc.c:72
#2  0x1762b in dn2id (be=0x2a800, dn=0x2e498 "") at dn2id.c:72
#3  0x17a6f in dn2entry (be=0x2a800, dn=0x0, matched=0xefbfd46c, rw=0)
    at dn2id.c:171
#4  0x17b03 in dn2entry_r (be=0x2a800, dn=0x0, matched=0xefbfd46c)
    at dn2id.c:207
#5  0x1d697 in derefDN (be=0x2a800, conn=0x2b2e4, op=0x2e3c0, 
    dn=0x399a0 "cn=Heiko,o=Xlink GmbH,c=DE") at alias.c:212
#6  0x1c3e2 in ldbm_back_search (be=0x2a800, conn=0x2b2e4, op=0x2e3c0, 
    base=0x399a0 "cn=Heiko,o=Xlink GmbH,c=DE", scope=0, deref=2, slimit=500, 
    tlimit=3600, filter=0x39980, filterstr=0x39a00 "(objectclass=*)", 
    attrs=0x0, attrsonly=0) at search.c:82
#7  0x4239 in do_search (conn=0x2b2e4, op=0x2e3c0) at search.c:169
#8  0x3792 in connection_operation (arg_v=0x37a80) at connection.c:74
#9  0x1faeb in pthread_create (tid=0x2e3ec, attr=0xefbfd598, 
    func=0x35ec <connection_operation>, arg=0x37a80) at thread.c:522
#10 0x3c94 in connection_activity (conn=0x2b2e4) at connection.c:201
#11 0x333f in slapd_daemon (port=0x185) at daemon.c:362
#12 0x1faeb in pthread_create (tid=0x27fd4, attr=0x0, 
    func=0x23a0 <slapd_daemon>, arg=0x185) at thread.c:522
#13 0x1d67 in main (argc=1, argv=0xefbfd7c0) at main.c:182

Segmentation fault (core dumped)(gdb) up
#1  0xbe85 in ch_strdup (string=0x0) at ch_malloc.c:72
72              if ( (new = strdup( string )) == NULL ) {
(gdb) up
#2  0x1762b in dn2id (be=0x2a800, dn=0x2e498 "") at dn2id.c:72
72              dn = ch_strdup( dn );
(gdb) up
#3  0x17a6f in dn2entry (be=0x2a800, dn=0x0, matched=0xefbfd46c, rw=0)
    at dn2id.c:171
171             if ( (id = dn2id( be, dn )) != NOID &&
(gdb) up
#4  0x17b03 in dn2entry_r (be=0x2a800, dn=0x0, matched=0xefbfd46c)
    at dn2id.c:207
207             return( dn2entry( be, dn, matched, 0 ) );
(gdb) up
#5  0x1d697 in derefDN (be=0x2a800, conn=0x2b2e4, op=0x2e3c0, 
    dn=0x399a0 "cn=Heiko,o=Xlink GmbH,c=DE") at alias.c:212
212       if ( (eNew = dn2entry_r( be, newDN, &matched )) != NULL) {


This is provoked using web500gw