X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=servers%2Fslapd%2Fback-bdb%2Ftools.c;h=3c585b0367fccecc53a72772cf7782cb33c7f221;hb=fac36dcba707b0aba050498b414ef96778ef5fc7;hp=735845e4590736cff256b1d563d60e127605c67a;hpb=06dca7858e07c5d77302e639307c60a15fa810cf;p=openldap diff --git a/servers/slapd/back-bdb/tools.c b/servers/slapd/back-bdb/tools.c index 735845e459..3c585b0367 100644 --- a/servers/slapd/back-bdb/tools.c +++ b/servers/slapd/back-bdb/tools.c @@ -245,10 +245,12 @@ ID bdb_tool_entry_next( { int rc; ID id; - struct bdb_info *bdb = (struct bdb_info *) be->be_private; + struct bdb_info *bdb; assert( be != NULL ); assert( slapMode & SLAP_TOOL_MODE ); + + bdb = (struct bdb_info *) be->be_private; assert( bdb != NULL ); next:; @@ -634,7 +636,7 @@ ID bdb_tool_entry_put( struct berval *text ) { int rc; - struct bdb_info *bdb = (struct bdb_info *) be->be_private; + struct bdb_info *bdb; DB_TXN *tid = NULL; Operation op = {0}; Opheader ohdr = {0}; @@ -649,6 +651,8 @@ ID bdb_tool_entry_put( Debug( LDAP_DEBUG_TRACE, "=> " LDAP_XSTRING(bdb_tool_entry_put) "( %ld, \"%s\" )\n", (long) e->e_id, e->e_dn, 0 ); + bdb = (struct bdb_info *) be->be_private; + if (! (slapMode & SLAP_TOOL_QUICK)) { rc = TXN_BEGIN( bdb->bi_dbenv, NULL, &tid, bdb->bi_db_opflags ); @@ -882,7 +886,7 @@ ID bdb_tool_entry_modify( struct berval *text ) { int rc; - struct bdb_info *bdb = (struct bdb_info *) be->be_private; + struct bdb_info *bdb; DB_TXN *tid = NULL; Operation op = {0}; Opheader ohdr = {0}; @@ -900,6 +904,8 @@ ID bdb_tool_entry_modify( "=> " LDAP_XSTRING(bdb_tool_entry_modify) "( %ld, \"%s\" )\n", (long) e->e_id, e->e_dn, 0 ); + bdb = (struct bdb_info *) be->be_private; + if (! (slapMode & SLAP_TOOL_QUICK)) { if( cursor ) { cursor->c_close( cursor );