/* handle a Samba upgrade */
tdb_lock_bystring(tdb, vstring);
if (tdb_fetch_int(tdb, vstring) != DATABASE_VERSION) {
- tdb_traverse(tdb, (tdb_traverse_func)tdb_delete, NULL);
+ tdb_traverse(tdb, tdb_traverse_delete_fn, NULL);
tdb_store_int(tdb, vstring, DATABASE_VERSION);
}
tdb_unlock_bystring(tdb, vstring);
if (tdb_lockall(tdb) != 0) return False;
/* wipe the db */
- tdb_traverse(tdb, (tdb_traverse_func) tdb_delete, NULL);
+ tdb_traverse(tdb, tdb_traverse_delete_fn, NULL);
msgid = NULL;
/* handle a Samba upgrade */
tdb_lock_bystring(tdb, vstring);
if (tdb_fetch_int(tdb, vstring) != DATABASE_VERSION) {
- tdb_traverse(tdb, (tdb_traverse_func)tdb_delete, NULL);
+ tdb_traverse(tdb, tdb_traverse_delete_fn, NULL);
tdb_store_int(tdb, vstring, DATABASE_VERSION);
account_policy_set(AP_MIN_PASSWORD_LEN, MINPASSWDLENGTH); /* 5 chars minimum */
if (!upgrade_to_version_2())
return False;
} else
- tdb_traverse(tdb_drivers, (tdb_traverse_func)tdb_delete, NULL);
+ tdb_traverse(tdb_drivers, tdb_traverse_delete_fn, NULL);
tdb_store_int(tdb_drivers, vstring, NTDRIVERS_DATABASE_VERSION);
}
/* handle a Samba upgrade */
tdb_lock_bystring(tdb, sversion);
if (tdb_fetch_int(tdb, sversion) != PRINT_DATABASE_VERSION) {
- tdb_traverse(tdb, (tdb_traverse_func)tdb_delete, NULL);
+ tdb_traverse(tdb, tdb_traverse_delete_fn, NULL);
tdb_store_int(tdb, sversion, PRINT_DATABASE_VERSION);
}
tdb_unlock_bystring(tdb, sversion);
/* handle a Samba upgrade */
tdb_lock_bystring(share_tdb, vstring);
if (tdb_fetch_int(share_tdb, vstring) != SHARE_DATABASE_VERSION) {
- tdb_traverse(share_tdb, (tdb_traverse_func)tdb_delete, NULL);
+ tdb_traverse(share_tdb, tdb_traverse_delete_fn, NULL);
tdb_store_int(share_tdb, vstring, SHARE_DATABASE_VERSION);
}
tdb_unlock_bystring(share_tdb, vstring);
return tdb;
}
+
+
+/****************************************************************************
+ 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)
+{
+ return tdb_delete(the_tdb, key);
+}