]> git.ozlabs.org Git - ccan/blobdiff - ccan/tdb2/test/run-04-basichash.c
tdb2: move mmap into struct tdb_file
[ccan] / ccan / tdb2 / test / run-04-basichash.c
index 491c853fce27fb58b5778edc05f5d22aaa9570cb..b3a5d1c5bd0b8d2b1d1ffe6d03cee05e429ec110 100644 (file)
@@ -1,4 +1,5 @@
 #include <ccan/tdb2/tdb.c>
+#include <ccan/tdb2/open.c>
 #include <ccan/tdb2/free.c>
 #include <ccan/tdb2/lock.c>
 #include <ccan/tdb2/io.c>
@@ -59,23 +60,24 @@ int main(int argc, char *argv[])
                ok1(h.hlock_start == 0);
                ok1(h.hlock_range == 
                    1ULL << (64-(TDB_TOPLEVEL_HASH_BITS-TDB_HASH_GROUP_BITS)));
-               ok1((tdb->flags & TDB_NOLOCK) || tdb->num_lockrecs == 1);
+               ok1((tdb->flags & TDB_NOLOCK) || tdb->file->num_lockrecs == 1);
                ok1((tdb->flags & TDB_NOLOCK)
-                   || tdb->lockrecs[0].off == TDB_HASH_LOCK_START);
+                   || tdb->file->lockrecs[0].off == TDB_HASH_LOCK_START);
                /* FIXME: Check lock length */
 
                /* Allocate a new record. */
-               new_off = alloc(tdb, key.dsize, dbuf.dsize, h.h, false);
-               ok1(new_off != TDB_OFF_ERR);
+               new_off = alloc(tdb, key.dsize, dbuf.dsize, h.h,
+                               TDB_USED_MAGIC, false);
+               ok1(!TDB_OFF_IS_ERR(new_off));
 
                /* We should be able to add it now. */
                ok1(add_to_hash(tdb, &h, new_off) == 0);
 
                /* Make sure we fill it in for later finding. */
                off = new_off + sizeof(struct tdb_used_record);
-               ok1(!tdb->methods->write(tdb, off, key.dptr, key.dsize));
+               ok1(!tdb->methods->twrite(tdb, off, key.dptr, key.dsize));
                off += key.dsize;
-               ok1(!tdb->methods->write(tdb, off, dbuf.dptr, dbuf.dsize));
+               ok1(!tdb->methods->twrite(tdb, off, dbuf.dptr, dbuf.dsize));
 
                /* We should be able to unlock that OK. */
                ok1(tdb_unlock_hashes(tdb, h.hlock_start, h.hlock_range,
@@ -99,9 +101,9 @@ int main(int argc, char *argv[])
                ok1(h.hlock_start == 0);
                ok1(h.hlock_range == 
                    1ULL << (64-(TDB_TOPLEVEL_HASH_BITS-TDB_HASH_GROUP_BITS)));
-               ok1((tdb->flags & TDB_NOLOCK) || tdb->num_lockrecs == 1);
+               ok1((tdb->flags & TDB_NOLOCK) || tdb->file->num_lockrecs == 1);
                ok1((tdb->flags & TDB_NOLOCK)
-                   || tdb->lockrecs[0].off == TDB_HASH_LOCK_START);
+                   || tdb->file->lockrecs[0].off == TDB_HASH_LOCK_START);
                /* FIXME: Check lock length */
 
                ok1(tdb_unlock_hashes(tdb, h.hlock_start, h.hlock_range,
@@ -125,9 +127,9 @@ int main(int argc, char *argv[])
                ok1(h.hlock_start == 0);
                ok1(h.hlock_range == 
                    1ULL << (64-(TDB_TOPLEVEL_HASH_BITS-TDB_HASH_GROUP_BITS)));
-               ok1((tdb->flags & TDB_NOLOCK) || tdb->num_lockrecs == 1);
+               ok1((tdb->flags & TDB_NOLOCK) || tdb->file->num_lockrecs == 1);
                ok1((tdb->flags & TDB_NOLOCK)
-                   || tdb->lockrecs[0].off == TDB_HASH_LOCK_START);
+                   || tdb->file->lockrecs[0].off == TDB_HASH_LOCK_START);
                /* FIXME: Check lock length */
 
                /* Make it expand 0'th bucket. */
@@ -163,9 +165,9 @@ int main(int argc, char *argv[])
                ok1(h.hlock_start == 0);
                ok1(h.hlock_range == 
                    1ULL << (64-(TDB_TOPLEVEL_HASH_BITS-TDB_HASH_GROUP_BITS)));
-               ok1((tdb->flags & TDB_NOLOCK) || tdb->num_lockrecs == 1);
+               ok1((tdb->flags & TDB_NOLOCK) || tdb->file->num_lockrecs == 1);
                ok1((tdb->flags & TDB_NOLOCK)
-                   || tdb->lockrecs[0].off == TDB_HASH_LOCK_START);
+                   || tdb->file->lockrecs[0].off == TDB_HASH_LOCK_START);
                /* FIXME: Check lock length */
 
                /* Simple delete should work. */
@@ -194,9 +196,9 @@ int main(int argc, char *argv[])
                ok1(h.hlock_start == 0);
                ok1(h.hlock_range == 
                    1ULL << (64-(TDB_TOPLEVEL_HASH_BITS-TDB_HASH_GROUP_BITS)));
-               ok1((tdb->flags & TDB_NOLOCK) || tdb->num_lockrecs == 1);
+               ok1((tdb->flags & TDB_NOLOCK) || tdb->file->num_lockrecs == 1);
                ok1((tdb->flags & TDB_NOLOCK)
-                   || tdb->lockrecs[0].off == TDB_HASH_LOCK_START);
+                   || tdb->file->lockrecs[0].off == TDB_HASH_LOCK_START);
                /* FIXME: Check lock length */
 
                ok1(expand_group(tdb, &h) == 0);
@@ -225,15 +227,16 @@ int main(int argc, char *argv[])
 
                /* We should be able to add it now. */
                /* Allocate a new record. */
-               new_off = alloc(tdb, key.dsize, dbuf.dsize, h.h, false);
-               ok1(new_off != TDB_OFF_ERR);
+               new_off = alloc(tdb, key.dsize, dbuf.dsize, h.h,
+                               TDB_USED_MAGIC, false);
+               ok1(!TDB_OFF_IS_ERR(new_off));
                ok1(add_to_hash(tdb, &h, new_off) == 0);
 
                /* Make sure we fill it in for later finding. */
                off = new_off + sizeof(struct tdb_used_record);
-               ok1(!tdb->methods->write(tdb, off, key.dptr, key.dsize));
+               ok1(!tdb->methods->twrite(tdb, off, key.dptr, key.dsize));
                off += key.dsize;
-               ok1(!tdb->methods->write(tdb, off, dbuf.dptr, dbuf.dsize));
+               ok1(!tdb->methods->twrite(tdb, off, dbuf.dptr, dbuf.dsize));
 
                /* We should be able to unlock that OK. */
                ok1(tdb_unlock_hashes(tdb, h.hlock_start, h.hlock_range,