s3:dbwrap: add specific dbwrap_wipe() implementation to dbwrap_tdb
authorGregor Beck <gbeck@sernet.de>
Tue, 16 Aug 2011 12:43:29 +0000 (14:43 +0200)
committerMichael Adam <obnox@samba.org>
Tue, 11 Oct 2011 12:17:55 +0000 (14:17 +0200)
Signed-off-by: Michael Adam <obnox@samba.org>
source3/lib/dbwrap/dbwrap_tdb.c

index 8964510c15575036421d576ff9a4b9b3ef0e8eb9..b8385393077b8bfe5ebcff7361f674719a592c32 100644 (file)
@@ -188,6 +188,13 @@ static int db_tdb_exists(struct db_context *db, TDB_DATA key)
        return tdb_exists(ctx->wtdb->tdb, key);
 }
 
+static int db_tdb_wipe(struct db_context *db)
+{
+       struct db_tdb_ctx *ctx = talloc_get_type_abort(
+               db->private_data, struct db_tdb_ctx);
+       return tdb_wipe_all(ctx->wtdb->tdb);
+}
+
 static int db_tdb_parse(struct db_context *db, TDB_DATA key,
                        int (*parser)(TDB_DATA key, TDB_DATA data,
                                      void *private_data),
@@ -383,6 +390,7 @@ struct db_context *db_open_tdb(TALLOC_CTX *mem_ctx,
        result->transaction_commit = db_tdb_transaction_commit;
        result->transaction_cancel = db_tdb_transaction_cancel;
        result->exists = db_tdb_exists;
+       result->wipe = db_tdb_wipe;
        return result;
 
  fail: