]> git.ozlabs.org Git - ccan/blobdiff - ccan/tdb2/test/run-tdb1-corrupt.c
tdb2: merge tdb1_context into tdb_context.
[ccan] / ccan / tdb2 / test / run-tdb1-corrupt.c
index b2dcafadc0e110b59690d828547c575989e0a0d3..2e70da7ce5ddf53848bcc96fab64748fce84227c 100644 (file)
@@ -4,7 +4,7 @@
 #include <err.h>
 #include "tdb1-logging.h"
 
-static int check(TDB1_DATA key, TDB1_DATA data, void *private)
+static int check(TDB_DATA key, TDB_DATA data, void *private)
 {
        unsigned int *sizes = private;
 
@@ -23,26 +23,26 @@ static int check(TDB1_DATA key, TDB1_DATA data, void *private)
        return 0;
 }
 
-static void tdb1_flip_bit(struct tdb1_context *tdb, unsigned int bit)
+static void tdb1_flip_bit(struct tdb_context *tdb, unsigned int bit)
 {
        unsigned int off = bit / CHAR_BIT;
        unsigned char mask = (1 << (bit % CHAR_BIT));
 
-       if (tdb->map_ptr)
-               ((unsigned char *)tdb->map_ptr)[off] ^= mask;
+       if (tdb->file->map_ptr)
+               ((unsigned char *)tdb->file->map_ptr)[off] ^= mask;
        else {
                unsigned char c;
-               if (pread(tdb->fd, &c, 1, off) != 1)
+               if (pread(tdb->file->fd, &c, 1, off) != 1)
                        err(1, "pread");
                c ^= mask;
-               if (pwrite(tdb->fd, &c, 1, off) != 1)
+               if (pwrite(tdb->file->fd, &c, 1, off) != 1)
                        err(1, "pwrite");
        }
 }
 
-static void check_test(struct tdb1_context *tdb)
+static void check_test(struct tdb_context *tdb)
 {
-       TDB1_DATA key, data;
+       TDB_DATA key, data;
        unsigned int i, verifiable, corrupt, sizes[2], dsize, ksize;
 
        ok1(tdb1_check(tdb, NULL, NULL) == 0);
@@ -58,13 +58,13 @@ static void check_test(struct tdb1_context *tdb)
        for (key.dsize = 1; key.dsize <= 5; key.dsize++) {
                ksize += key.dsize;
                dsize += data.dsize;
-               if (tdb1_store(tdb, key, data, TDB1_INSERT) != 0)
+               if (tdb1_store(tdb, key, data, TDB_INSERT) != 0)
                        abort();
        }
 
        /* This is how many bytes we expect to be verifiable. */
        /* From the file header. */
-       verifiable = strlen(TDB1_MAGIC_FOOD) + 1
+       verifiable = strlen(TDB_MAGIC_FOOD) + 1
                + 2 * sizeof(uint32_t) + 2 * sizeof(tdb1_off_t)
                + 2 * sizeof(uint32_t);
        /* From the free list chain and hash chains. */
@@ -78,7 +78,7 @@ static void check_test(struct tdb1_context *tdb)
        verifiable += ksize + dsize;
 
        /* Flip one bit at a time, make sure it detects verifiable bytes. */
-       for (i = 0, corrupt = 0; i < tdb->map_size * CHAR_BIT; i++) {
+       for (i = 0, corrupt = 0; i < tdb->file->map_size * CHAR_BIT; i++) {
                tdb1_flip_bit(tdb, i);
                memset(sizes, 0, sizeof(sizes));
                if (tdb1_check(tdb, check, sizes) != 0)
@@ -93,11 +93,11 @@ static void check_test(struct tdb1_context *tdb)
 
 int main(int argc, char *argv[])
 {
-       struct tdb1_context *tdb;
+       struct tdb_context *tdb;
 
        plan_tests(4);
        /* This should use mmap. */
-       tdb = tdb1_open_ex("run-corrupt.tdb", 2, TDB1_CLEAR_IF_FIRST,
+       tdb = tdb1_open_ex("run-corrupt.tdb", 2, TDB_DEFAULT,
                          O_CREAT|O_TRUNC|O_RDWR, 0600, &taplogctx, NULL);
 
        if (!tdb)
@@ -106,7 +106,7 @@ int main(int argc, char *argv[])
        tdb1_close(tdb);
 
        /* This should not. */
-       tdb = tdb1_open_ex("run-corrupt.tdb", 2, TDB1_CLEAR_IF_FIRST|TDB1_NOMMAP,
+       tdb = tdb1_open_ex("run-corrupt.tdb", 2, TDB_NOMMAP,
                          O_CREAT|O_TRUNC|O_RDWR, 0600, &taplogctx, NULL);
 
        if (!tdb)