X-Git-Url: https://git.ozlabs.org/?a=blobdiff_plain;f=ccan%2Ftdb%2Ftdb.h;h=80bf89617e7d2dcdf13f23a82d047c340ec800ba;hb=ccce1aa254cb9c7a2796e3171c7146703ab7ae40;hp=f1805ecddbd09c4011788d15f551b8dba31ad0d8;hpb=2c67a284d11b5b030d8095df7ff2b31275d7d29c;p=ccan diff --git a/ccan/tdb/tdb.h b/ccan/tdb/tdb.h index f1805ecd..80bf8961 100644 --- a/ccan/tdb/tdb.h +++ b/ccan/tdb/tdb.h @@ -33,6 +33,8 @@ extern "C" { #ifndef _SAMBA_BUILD_ /* For mode_t */ #include +/* For O_* flags. */ +#include /* For sig_atomic_t. */ #include #endif @@ -135,6 +137,7 @@ int tdb_fd(struct tdb_context *tdb); tdb_log_func tdb_log_fn(struct tdb_context *tdb); void *tdb_get_logging_private(struct tdb_context *tdb); int tdb_transaction_start(struct tdb_context *tdb); +int tdb_transaction_prepare_commit(struct tdb_context *tdb); int tdb_transaction_commit(struct tdb_context *tdb); int tdb_transaction_cancel(struct tdb_context *tdb); int tdb_transaction_recover(struct tdb_context *tdb); @@ -158,11 +161,14 @@ int tdb_chainlock_unmark(struct tdb_context *tdb, TDB_DATA key); void tdb_setalarm_sigptr(struct tdb_context *tdb, volatile sig_atomic_t *sigptr); +/* wipe and repack */ +int tdb_wipe_all(struct tdb_context *tdb); +int tdb_repack(struct tdb_context *tdb); + /* Debug functions. Not used in production. */ void tdb_dump_all(struct tdb_context *tdb); int tdb_printfreelist(struct tdb_context *tdb); int tdb_validate_freelist(struct tdb_context *tdb, int *pnum_entries); -int tdb_wipe_all(struct tdb_context *tdb); int tdb_freelist_size(struct tdb_context *tdb); extern TDB_DATA tdb_null;