X-Git-Url: https://git.ozlabs.org/?p=ccan;a=blobdiff_plain;f=ccan%2Fcrcsync%2Ftest%2Frun.c;h=2c48b37804a1a76bd925c9d278c868ade97a6547;hp=b21ad01e4b8eb77789c80eeafede7c725d4c4a14;hb=cfc7d301da49dd2b2ce346b08bf5fbff3acfae67;hpb=144dff1410f72f89106c93b07a52ac7ca1598005 diff --git a/ccan/crcsync/test/run.c b/ccan/crcsync/test/run.c index b21ad01e..2c48b378 100644 --- a/ccan/crcsync/test/run.c +++ b/ccan/crcsync/test/run.c @@ -1,6 +1,6 @@ -#include "crcsync/crcsync.h" -#include "../crcsync.c" -#include "tap/tap.h" +#include +#include +#include #include #include #include @@ -65,17 +65,17 @@ static void test_sync(const char *buffer1, size_t len1, const struct result results[], size_t num_results) { struct crc_context *ctx; - size_t used, ret, i, curr_literal, finalsize; + size_t used, ret, i, curr_literal, tailsize; long result; - uint32_t crcs[num_blocks(len1, block_size)]; + uint64_t crcs[num_blocks(len1, block_size)]; - crc_of_blocks(buffer1, len1, block_size, 32, crcs); + crc_of_blocks(buffer1, len1, block_size, 64, crcs); - finalsize = len1 % block_size ?: block_size; + tailsize = len1 % block_size; /* Normal method. */ - ctx = crc_context_new(block_size, 32, crcs, ARRAY_SIZE(crcs), - finalsize); + ctx = crc_context_new(block_size, 64, crcs, ARRAY_SIZE(crcs), + tailsize); curr_literal = 0; for (used = 0, i = 0; used < len2; used += ret) { @@ -93,8 +93,8 @@ static void test_sync(const char *buffer1, size_t len1, crc_context_free(ctx); /* Byte-at-a-time method. */ - ctx = crc_context_new(block_size, 32, crcs, ARRAY_SIZE(crcs), - finalsize); + ctx = crc_context_new(block_size, 64, crcs, ARRAY_SIZE(crcs), + tailsize); curr_literal = 0; for (used = 0, i = 0; used < len2; used += ret) { @@ -121,7 +121,7 @@ int main(int argc, char *argv[]) { char *buffer1, *buffer2; unsigned int i; - uint32_t crcs1[NUM_BLOCKS], crcs2[NUM_BLOCKS]; + uint64_t crcs1[NUM_BLOCKS], crcs2[NUM_BLOCKS]; plan_tests(664); @@ -130,9 +130,9 @@ int main(int argc, char *argv[]) /* Truncated end block test. */ crcs1[ARRAY_SIZE(crcs1)-1] = 0xdeadbeef; - crc_of_blocks(buffer1, BUFFER_SIZE-BLOCK_SIZE-1, BLOCK_SIZE, 32, crcs1); + crc_of_blocks(buffer1, BUFFER_SIZE-BLOCK_SIZE-1, BLOCK_SIZE, 64, crcs1); ok1(crcs1[ARRAY_SIZE(crcs1)-1] == 0xdeadbeef); - crc_of_blocks(buffer2, BUFFER_SIZE-BLOCK_SIZE-1, BLOCK_SIZE, 32, crcs2); + crc_of_blocks(buffer2, BUFFER_SIZE-BLOCK_SIZE-1, BLOCK_SIZE, 64, crcs2); ok1(memcmp(crcs1, crcs2, sizeof(crcs1[0])*(ARRAY_SIZE(crcs1)-1)) == 0); /* Fill with non-zero pattern, retest. */ @@ -140,16 +140,16 @@ int main(int argc, char *argv[]) buffer1[i] = buffer2[i] = i + i/BLOCK_SIZE; crcs1[ARRAY_SIZE(crcs1)-1] = 0xdeadbeef; - crc_of_blocks(buffer1, BUFFER_SIZE-BLOCK_SIZE-1, BLOCK_SIZE, 32, crcs1); + crc_of_blocks(buffer1, BUFFER_SIZE-BLOCK_SIZE-1, BLOCK_SIZE, 64, crcs1); ok1(crcs1[ARRAY_SIZE(crcs1)-1] == 0xdeadbeef); - crc_of_blocks(buffer2, BUFFER_SIZE-BLOCK_SIZE-1, BLOCK_SIZE, 32, crcs2); + crc_of_blocks(buffer2, BUFFER_SIZE-BLOCK_SIZE-1, BLOCK_SIZE, 64, crcs2); ok1(memcmp(crcs1, crcs2, sizeof(crcs1[0])*(ARRAY_SIZE(crcs1)-1)) == 0); /* Check that it correctly masks bits. */ - crc_of_blocks(buffer1, BUFFER_SIZE, BLOCK_SIZE, 32, crcs1); + crc_of_blocks(buffer1, BUFFER_SIZE, BLOCK_SIZE, 64, crcs1); crc_of_blocks(buffer2, BUFFER_SIZE, BLOCK_SIZE, 8, crcs2); for (i = 0; i < NUM_BLOCKS; i++) - ok1(crcs2[i] == (crcs1[i] & 0xFF)); + ok1(crcs2[i] == (crcs1[i] & 0xFF00000000000000ULL)); /* Now test the "exact match" "round blocks" case. */ {