From 4f8a99e111a2aad60a9fefa116712a7bda51fff1 Mon Sep 17 00:00:00 2001 From: Howard Chu Date: Sun, 6 Apr 2003 00:48:48 +0000 Subject: [PATCH] ITS#2423 plug some memleaks --- clients/tools/common.c | 1 + clients/tools/ldapsearch.c | 11 +++++++++-- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/clients/tools/common.c b/clients/tools/common.c index d39b3d9bd8..526358d8f6 100644 --- a/clients/tools/common.c +++ b/clients/tools/common.c @@ -670,6 +670,7 @@ tool_bind( LDAP *ld ) sasl_mech, NULL, NULL, sasl_flags, lutil_sasl_interact, defaults ); + lutil_sasl_freedefs( defaults ); if( rc != LDAP_SUCCESS ) { ldap_perror( ld, "ldap_sasl_interactive_bind_s" ); exit( EXIT_FAILURE ); diff --git a/clients/tools/ldapsearch.c b/clients/tools/ldapsearch.c index 67beac471e..83cae190b6 100644 --- a/clients/tools/ldapsearch.c +++ b/clients/tools/ldapsearch.c @@ -915,6 +915,8 @@ getNextPage: #endif ldap_unbind( ld ); + sasl_done(); + ldap_pvt_tls_destroy(); return( rc ); } @@ -1120,6 +1122,7 @@ static int dosearch( } done: + ldap_msgfree( res ); #ifdef LDAP_CONTROL_PAGEDRESULTS if ( pageSize != 0 ) { npagedresponses = npagedresponses + nresponses; @@ -1521,24 +1524,28 @@ static int print_result( fprintf( stderr, "%s (%d)\n", ldap_err2string(err), err ); } - if( matcheddn && *matcheddn ) { + if( matcheddn ) { + if( *matcheddn ) { if( !ldif ) { write_ldif( LDIF_PUT_VALUE, "matchedDN", matcheddn, strlen(matcheddn) ); } else { fprintf( stderr, "Matched DN: %s\n", matcheddn ); } + } ber_memfree( matcheddn ); } - if( text && *text ) { + if( text ) { + if( *text ) { if( !ldif ) { write_ldif( LDIF_PUT_TEXT, "text", text, strlen(text) ); } else { fprintf( stderr, "Additional information: %s\n", text ); } + } ber_memfree( text ); } -- 2.39.5