X-Git-Url: http://git.ozlabs.org/?a=blobdiff_plain;f=ccan%2Ftdb%2Ftest%2Frun-corrupt.c;h=2109e936b1bf77eb645ffc7627f50896ed6b436e;hb=95bf6d3f652c031e1bf4a2ef5df187b6f34a4c01;hp=3bf78835527992f6e16b557b5da947fe06f4bcb6;hpb=39357f4e89f4ac02eb11861812cbfc67b4f1d4ef;p=ccan diff --git a/ccan/tdb/test/run-corrupt.c b/ccan/tdb/test/run-corrupt.c index 3bf78835..2109e936 100644 --- a/ccan/tdb/test/run-corrupt.c +++ b/ccan/tdb/test/run-corrupt.c @@ -9,9 +9,11 @@ #include #include #include +#include #include #include #include +#include "logging.h" static int check(TDB_DATA key, TDB_DATA data, void *private) { @@ -72,13 +74,14 @@ static void check_test(struct tdb_context *tdb) /* This is how many bytes we expect to be verifiable. */ /* From the file header. */ verifiable = strlen(TDB_MAGIC_FOOD) + 1 - + 2 * sizeof(uint32_t) + 2 * sizeof(tdb_off_t); + + 2 * sizeof(uint32_t) + 2 * sizeof(tdb_off_t) + + 2 * sizeof(uint32_t); /* From the free list chain and hash chains. */ verifiable += 3 * sizeof(tdb_off_t); /* From the record headers & tailer */ - verifiable += 5 * (sizeof(struct list_struct) + sizeof(uint32_t)); + verifiable += 5 * (sizeof(struct tdb_record) + sizeof(uint32_t)); /* The free block: we ignore datalen, keylen, full_hash. */ - verifiable += sizeof(struct list_struct) - 3*sizeof(uint32_t) + + verifiable += sizeof(struct tdb_record) - 3*sizeof(uint32_t) + sizeof(uint32_t); /* Our check function verifies the key and data. */ verifiable += ksize + dsize; @@ -103,8 +106,8 @@ int main(int argc, char *argv[]) plan_tests(4); /* This should use mmap. */ - tdb = tdb_open("/tmp/test6.tdb", 2, TDB_CLEAR_IF_FIRST, - O_CREAT|O_TRUNC|O_RDWR, 0600); + tdb = tdb_open_ex("run-corrupt.tdb", 2, TDB_CLEAR_IF_FIRST, + O_CREAT|O_TRUNC|O_RDWR, 0600, &taplogctx, NULL); if (!tdb) abort(); @@ -112,8 +115,8 @@ int main(int argc, char *argv[]) tdb_close(tdb); /* This should not. */ - tdb = tdb_open("/tmp/test6.tdb", 2, TDB_CLEAR_IF_FIRST|TDB_NOMMAP, - O_CREAT|O_TRUNC|O_RDWR, 0600); + tdb = tdb_open_ex("run-corrupt.tdb", 2, TDB_CLEAR_IF_FIRST|TDB_NOMMAP, + O_CREAT|O_TRUNC|O_RDWR, 0600, &taplogctx, NULL); if (!tdb) abort();