X-Git-Url: https://git.ozlabs.org/?a=blobdiff_plain;f=ccan%2Ftdb2%2Ftdb1_tdb.c;h=384654ed941a87910a3b1c00be07a570f4cae018;hb=98c754ffe65bc335f66161d6cc8705d4ea2710ec;hp=bb007722b34e9bff5bcdb444ea538ee0d1e94246;hpb=49475d68deecd0b31597ed6094229171d2699b11;p=ccan diff --git a/ccan/tdb2/tdb1_tdb.c b/ccan/tdb2/tdb1_tdb.c index bb007722..384654ed 100644 --- a/ccan/tdb2/tdb1_tdb.c +++ b/ccan/tdb2/tdb1_tdb.c @@ -26,6 +26,7 @@ */ #include "tdb1_private.h" +#include TDB_DATA tdb1_null; @@ -601,6 +602,8 @@ int tdb1_store(struct tdb_context *tdb, TDB_DATA key, TDB_DATA dbuf, int flag) uint32_t hash; int ret; + assert(tdb->flags & TDB_VERSION1); + if ((tdb->flags & TDB_RDONLY) || tdb->tdb1.traverse_read) { tdb->last_error = TDB_ERR_RDONLY; return -1; @@ -843,7 +846,7 @@ int tdb1_repack(struct tdb_context *tdb) return -1; } - tmp_db = tdb1_open("tmpdb", TDB_INTERNAL, O_RDWR|O_CREAT, 0, &hsize); + tmp_db = tdb_open("tmpdb", TDB_INTERNAL, O_RDWR|O_CREAT, 0, &hsize); if (tmp_db == NULL) { tdb->last_error = tdb_logerr(tdb, TDB_ERR_OOM, TDB_LOG_ERROR, __location__ " Failed to create tmp_db"); @@ -858,7 +861,7 @@ int tdb1_repack(struct tdb_context *tdb) tdb_logerr(tdb, tdb->last_error, TDB_LOG_ERROR, __location__ " Failed to traverse copying out"); tdb1_transaction_cancel(tdb); - tdb1_close(tmp_db); + tdb_close(tmp_db); return -1; } @@ -866,7 +869,7 @@ int tdb1_repack(struct tdb_context *tdb) tdb->last_error = tdb_logerr(tdb, state.error, TDB_LOG_ERROR, __location__ " Error during traversal"); tdb1_transaction_cancel(tdb); - tdb1_close(tmp_db); + tdb_close(tmp_db); return -1; } @@ -874,7 +877,7 @@ int tdb1_repack(struct tdb_context *tdb) tdb_logerr(tdb, tdb->last_error, TDB_LOG_ERROR, __location__ " Failed to wipe database\n"); tdb1_transaction_cancel(tdb); - tdb1_close(tmp_db); + tdb_close(tmp_db); return -1; } @@ -885,7 +888,7 @@ int tdb1_repack(struct tdb_context *tdb) tdb_logerr(tdb, tdb->last_error, TDB_LOG_ERROR, __location__ " Failed to traverse copying back"); tdb1_transaction_cancel(tdb); - tdb1_close(tmp_db); + tdb_close(tmp_db); return -1; } @@ -893,11 +896,11 @@ int tdb1_repack(struct tdb_context *tdb) tdb->last_error = tdb_logerr(tdb, state.error, TDB_LOG_ERROR, __location__ " Error during second traversal"); tdb1_transaction_cancel(tdb); - tdb1_close(tmp_db); + tdb_close(tmp_db); return -1; } - tdb1_close(tmp_db); + tdb_close(tmp_db); if (tdb1_transaction_commit(tdb) != 0) { tdb_logerr(tdb, tdb->last_error, TDB_LOG_ERROR,