]> icculus.org git repositories - icculus/xz.git/blob - debug/crc32.c
Removed what I believe is an incorrect #ifdef HAVE_* test.
[icculus/xz.git] / debug / crc32.c
1 ///////////////////////////////////////////////////////////////////////////////
2 //
3 /// \file       crc32.c
4 /// \brief      Primitive CRC32 calculation tool
5 //
6 //  Author:     Lasse Collin
7 //
8 //  This file has been put into the public domain.
9 //  You can do whatever you want with this file.
10 //
11 ///////////////////////////////////////////////////////////////////////////////
12
13 #include "sysdefs.h"
14 #include "lzma.h"
15 #include <stdio.h>
16
17
18 int
19 main(void)
20 {
21         uint32_t crc = 0;
22
23         do {
24                 uint8_t buf[BUFSIZ];
25                 const size_t size = fread(buf, 1, sizeof(buf), stdin);
26                 crc = lzma_crc32(buf, size, crc);
27         } while (!ferror(stdin) && !feof(stdin));
28
29         //printf("%08" PRIX32 "\n", crc);
30
31         // I want it little endian so it's easy to work with hex editor.
32         printf("%02" PRIX32 " ", crc & 0xFF);
33         printf("%02" PRIX32 " ", (crc >> 8) & 0xFF);
34         printf("%02" PRIX32 " ", (crc >> 16) & 0xFF);
35         printf("%02" PRIX32 " ", crc >> 24);
36         printf("\n");
37
38         return 0;
39 }