X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=servers%2Fslapd%2Fback-ldap%2Funbind.c;h=523657ef240fd7af71e99e17823bb3ad4a1b4a91;hb=bf35f8e37fa2516daa02a8c607dd2326b2be40e9;hp=93d2bd4f8b7149da54e90efabb71d6a8ddbedfec;hpb=6939c531700652491f4be4688c6a1f35a1ab8a18;p=openldap diff --git a/servers/slapd/back-ldap/unbind.c b/servers/slapd/back-ldap/unbind.c index 93d2bd4f8b..523657ef24 100644 --- a/servers/slapd/back-ldap/unbind.c +++ b/servers/slapd/back-ldap/unbind.c @@ -64,6 +64,7 @@ ldap_back_conn_destroy( #endif /* !NEW_LOGGING */ lc_curr.conn = conn; + lc_curr.local_dn = conn->c_ndn; ldap_pvt_thread_mutex_lock( &li->conn_mutex ); lc = avl_delete( &li->conntree, (caddr_t)&lc_curr, ldap_back_conn_cmp ); @@ -92,14 +93,7 @@ ldap_back_conn_destroy( * and calling ldap_unbind on a corrupted header results * in a segmentation fault */ - ldap_unbind(lc->ld); - if ( lc->bound_dn.bv_val ) { - ch_free( lc->bound_dn.bv_val ); - } - if ( lc->cred.bv_val ) { - ch_free( lc->cred.bv_val ); - } - ch_free( lc ); + ldap_back_conn_free( lc ); } /* no response to unbind */