1 #include "crcsync/crcsync.h"
2 #include "crcsync/crcsync.c"
8 #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]))
10 static void test_roll(unsigned int wsize
)
12 uint8_t data
[wsize
* 2];
13 uint64_t uncrc_tab
[256];
16 init_uncrc_tab(uncrc_tab
, wsize
);
18 for (i
= 0; i
< ARRAY_SIZE(data
); i
++)
21 for (i
= 1; i
< ARRAY_SIZE(data
) - wsize
; i
++) {
22 uint64_t rollcrc
, crc
;
24 crc
= crc64_iso(0, data
+i
, wsize
);
25 rollcrc
= crc_roll(crc64_iso(0, data
+i
-1, wsize
),
26 data
[i
-1], data
[i
+wsize
-1], uncrc_tab
);
28 ok(crc
== rollcrc
, "wsize %u, i %u", wsize
, i
);
32 int main(int argc
, char *argv
[])
34 plan_tests(100 - 1 + 128 - 1);