]> git.sur5r.net Git - openldap/commitdiff
Plug config leaks
authorHoward Chu <hyc@openldap.org>
Wed, 7 Aug 2002 08:43:52 +0000 (08:43 +0000)
committerHoward Chu <hyc@openldap.org>
Wed, 7 Aug 2002 08:43:52 +0000 (08:43 +0000)
servers/slapd/back-bdb/init.c
servers/slapd/back-bdb/search.c

index 5a62a5f11d84b5e06d8bd0d75c530749d8f624e4..ccf50818e629c48ff90e903771b19d29921d1509 100644 (file)
@@ -479,6 +479,8 @@ bdb_db_destroy( BackendDB *be )
                }
        }
 
+       if( bdb->bi_dbenv_home ) ch_free( bdb->bi_dbenv_home );
+
 #ifdef BDB_HIER
        ldap_pvt_thread_rdwr_destroy( &bdb->bi_tree_rdwr );
 #endif
@@ -487,6 +489,9 @@ bdb_db_destroy( BackendDB *be )
        ldap_pvt_thread_mutex_destroy( &bdb->bi_lastid_mutex );
        ldap_pvt_thread_mutex_destroy( &bdb->bi_database_mutex );
 
+       ch_free( bdb );
+       be->be_private = NULL;
+
        return 0;
 }
 
index 44076d7abeed248791f8c46787c854fbf38065b1..3bea37794c7c29de6cfcd5e97767fc7a143e7632 100644 (file)
@@ -741,11 +741,11 @@ static int search_candidates(
 #endif
 
        /* Allocate IDL stack, plus 1 more for former tmp */
-       stack = malloc( (depth + 1) * BDB_IDL_UM_SIZE * sizeof( ID ) );
+       stack = ch_malloc( (depth + 1) * BDB_IDL_UM_SIZE * sizeof( ID ) );
 
        rc = bdb_filter_candidates( be, &f, ids, stack, stack+BDB_IDL_UM_SIZE );
 
-       free( stack );
+       ch_free( stack );
 
        if( rc ) {
 #ifdef NEW_LOGGING