/* if its an unknown version we remove everthing in the db */
if (vers_id != DATABASE_VERSION_V2) {
- tdb_traverse(tdb, tdb_traverse_delete_fn, NULL);
+ tdb_wipe(tdb);
tdb_store_int32(tdb, vstring, DATABASE_VERSION_V2);
}
bool tdb_change_uint32_atomic(TDB_CONTEXT *tdb, const char *keystr,
uint32 *oldval, uint32 change_val);
-int tdb_traverse_delete_fn(struct tdb_context *the_tdb, TDB_DATA key, TDB_DATA dbuf,
- void *state);
+int tdb_wipe(TDB_CONTEXT *tdb);
int tdb_store_bystring(struct tdb_context *tdb, const char *keystr, TDB_DATA data, int flags);
int tdb_trans_store_bystring(TDB_CONTEXT *tdb, const char *keystr,
}
/* wipe the db */
- tdb_traverse(tdb, tdb_traverse_delete_fn, NULL);
+ tdb_wipe(tdb);
msgid = NULL;
}
if (vers_id != SHARE_DATABASE_VERSION_V2) {
- tdb_traverse(share_tdb, tdb_traverse_delete_fn, NULL);
+ tdb_wipe(share_tdb);
tdb_store_int32(share_tdb, vstring, SHARE_DATABASE_VERSION_V2);
}
tdb_unlock_bystring(share_tdb, vstring);
Allow tdb_delete to be used as a tdb_traversal_fn.
****************************************************************************/
-int tdb_traverse_delete_fn(TDB_CONTEXT *the_tdb, TDB_DATA key, TDB_DATA dbuf,
- void *state)
+static int tdb_traverse_delete_fn(TDB_CONTEXT *the_tdb, TDB_DATA key,
+ TDB_DATA dbuf, void *state)
{
return tdb_delete(the_tdb, key);
}
+int tdb_wipe(TDB_CONTEXT *tdb)
+{
+ return tdb_traverse(tdb, tdb_traverse_delete_fn, NULL);
+}
+
+
/**
return False;
}
if (tdb_fetch_int32(pdb->tdb, sversion) != PRINT_DATABASE_VERSION) {
- tdb_traverse(pdb->tdb, tdb_traverse_delete_fn, NULL);
+ tdb_wipe(pdb->tdb);
tdb_store_int32(pdb->tdb, sversion, PRINT_DATABASE_VERSION);
}
tdb_unlock_bystring(pdb->tdb, sversion);