]> git.sur5r.net Git - openldap/blobdiff - servers/slapd/back-bdb/init.c
Add calls to module_init/module_kill to support dynamically loaded backends.
[openldap] / servers / slapd / back-bdb / init.c
index 64ef4952aa2941698be8ff973de32e76f088d092..afc3e97ee62d24d404acfeccaf54445c2057ad24 100644 (file)
@@ -186,6 +186,10 @@ bdb_db_open( BackendDB *be )
                be->be_suffix[0].bv_val, 0, 0 );
 #endif
 
+       db_env_set_func_free( ber_memfree );
+       db_env_set_func_malloc( ber_memalloc );
+       db_env_set_func_realloc( ber_memrealloc );
+
        /* we should check existance of dbenv_home and db_directory */
 
        rc = db_env_create( &bdb->bi_dbenv, 0 );
@@ -202,9 +206,6 @@ bdb_db_open( BackendDB *be )
                return rc;
        }
 
-       bdb->bi_dbenv->set_alloc( bdb->bi_dbenv, (db_malloc *)ber_memalloc,
-               (db_realloc *)ber_memrealloc, ber_memfree );
-
        flags = DB_INIT_MPOOL | DB_THREAD | DB_CREATE
                | DB_INIT_LOCK | DB_INIT_LOG | DB_INIT_TXN;
        
@@ -549,6 +550,9 @@ bdb_initialize(
 #endif
 #ifdef LDAP_CONTROL_VALUESRETURNFILTER
                LDAP_CONTROL_VALUESRETURNFILTER,
+#endif
+#ifdef LDAP_CLIENT_UPDATE
+               LDAP_CONTROL_CLIENT_UPDATE,
 #endif
                NULL
        };