]> git.ozlabs.org Git - ccan/blobdiff - ccan/tdb2/test/run-tdb1-corrupt.c
tdb2: use tdb->flags & TDB_RDONLY instead of tdb->read_only for TDB1 code.
[ccan] / ccan / tdb2 / test / run-tdb1-corrupt.c
index bfc25a571110d80e283dd2fdf6202950c155dff1..5aa37ec46cadf2c65a3c66fa0aa6e60b2110b926 100644 (file)
@@ -28,14 +28,14 @@ static void tdb1_flip_bit(struct tdb1_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");
        }
 }
@@ -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)
@@ -97,7 +97,7 @@ int main(int argc, char *argv[])
 
        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)