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

Re: LDAP backend crashes OpenLDAP

> On AIX, with OpenLDAP 2.1.30 and the LDAP backend configured as so:
> database        ldap
> suffix          "o=WFU,c=US"
> uri             ldap://ldap2.wfu.edu
> suffixmassage   o=WFU,c=US      ou=Users,dc=wfu,dc=edu
> where the current server is *not* ldap2.wfu.edu, things crash as below
> after one successful query.  I have this feeling that the same thing
> happens, just very rarely, when running under Linux.
> Is there another option I need to specify to ldap?  Or would upgrading
> to 2.2 fix this problem?
> Error with "slapd -d -1":
> ldap_free_connection: actually freed
> daemon: removing 11
> conn=0 fd=11 closed
> Assertion failed: conn->c_struct_state == SLAP_C_USED, file
> connection.c, line 1505
> IOT/Abort trap (core dumped)

Something weird is happening: connection_input() is being called on a
connection that's just been destroyed:

> daemon: removing 11
> conn=0 fd=11 closed

^^^^ this happens in connection_destroy(), which also sets
c->c_struct_state = SLAP_C_UNUSED; however, to get to the
failed assertion, the connection must pass thru a process
that returns it only if conn->c_struct_state == SLAP_C_USED
(that's why the assertion is there).  Can you provide any
further insight?  e.g. navigate thru the code with a debugger?
Can you reproduce the problem with 2.2.14 (or HEAD)?
Can you provide your complete set of slapd.conf and example data?
I don't have any chance to test it on AIX, though.

I suggest you file an ITS.


Pierangelo Masarati

    SysNet - via Dossi,8 27100 Pavia Tel: +390382573859 Fax: +390382476497