From: Howard Chu Date: Fri, 30 Sep 2005 06:08:05 +0000 (+0000) Subject: ITS#4052,4053 plug mem leaks X-Git-Tag: OPENLDAP_REL_ENG_2_2_29~6 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=74eb401817162e68c5cdaef2be47c45e65426f65;p=thirdparty%2Fopenldap.git ITS#4052,4053 plug mem leaks --- diff --git a/libraries/libldap/unbind.c b/libraries/libldap/unbind.c index 9de2a1d801..8966df8a49 100644 --- a/libraries/libldap/unbind.c +++ b/libraries/libldap/unbind.c @@ -144,6 +144,13 @@ ldap_ld_free( ld->ld_options.ldo_defludp = NULL; } +#ifdef LDAP_CONNECTIONLESS + if ( ld->ld_options.ldo_peer != NULL ) { + LDAP_FREE( ld->ld_options.ldo_peer ); + ld->ld_options.ldo_peer = NULL; + } +#endif + if ( ld->ld_options.ldo_tm_api != NULL ) { LDAP_FREE( ld->ld_options.ldo_tm_api ); ld->ld_options.ldo_tm_api = NULL; @@ -176,6 +183,16 @@ ldap_ld_free( } #endif + if ( ld->ld_options.ldo_sctrls != NULL ) { + ldap_controls_free( ld->ld_options.ldo_sctrls ); + ld->ld_options.ldo_sctrls = NULL; + } + + if ( ld->ld_options.ldo_cctrls != NULL ) { + ldap_controls_free( ld->ld_options.ldo_cctrls ); + ld->ld_options.ldo_cctrls = NULL; + } + ber_sockbuf_free( ld->ld_sb ); #ifdef LDAP_R_COMPILE