1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
|
Index: bsdsfv/bsdsfv.c
===================================================================
--- bsdsfv.orig/bsdsfv.c
+++ bsdsfv/bsdsfv.c
@@ -59,10 +59,10 @@ typedef struct sfvtable {
#include <sys/stat.h>
#include <sys/mman.h>
#include <dirent.h>
+#include <inttypes.h>
-
-long
-UpdateCRC(unsigned long CRC, const char *buffer, long count)
+int32_t
+UpdateCRC(uint32_t CRC, const char *buffer, int32_t count)
{
/*
* Note: if you want to know how CRC32-checking works, I
@@ -70,7 +70,7 @@ UpdateCRC(unsigned long CRC, const char
* There is not much you can change in this function, so
* if you need a CRC32-check yourself, feel free to rip.
*/
- unsigned long CRCTABLE[] = {
+ uint32_t CRCTABLE[] = {
0x00000000, 0x77073096, 0xee0e612c, 0x990951ba, 0x076dc419,
0x706af48f,
0xe963a535, 0x9e6495a3, 0x0edb8832, 0x79dcb8a4, 0xe0d5e91e,
@@ -175,13 +175,13 @@ UpdateCRC(unsigned long CRC, const char
-long
+int32_t
GetFileCRC(char *filename)
{
- unsigned long crc = 0xffffffff;
+ uint32_t crc = 0xffffffff;
FILE *f;
- long totalread = 0;
- long localread;
+ int32_t totalread = 0;
+ int32_t localread;
/*
* Note: different buffer sizes may result in noticable
@@ -306,7 +306,7 @@ main(int argc, char *argv[])
FILE *missingfile;
DIR *dirp;
struct dirent *dp;
- long mycrc;
+ int32_t mycrc;
int cnt;
int dothisone;
char cfname[FNAMELEN];
@@ -487,8 +487,8 @@ main(int argc, char *argv[])
printf("Adding file: %s ... ", cfname);
fflush(stdout);
mycrc = GetFileCRC(cfname);
- printf("CRC = 0x%08lX\n", mycrc);
- sprintf(sfvline, "%s %08lX", cfname, mycrc);
+ printf("CRC = 0x%08" PRIX32 "\n", mycrc);
+ sprintf(sfvline, "%s %08" PRIX32, cfname, mycrc);
// uncomment next 2 lines to
// convert filename to upper case, for whatever reason
@@ -516,7 +516,7 @@ main(int argc, char *argv[])
printf("Testing %s ... ", cfname);
fflush(stdout);
mycrc = GetFileCRC(cfname);
- printf("local = 0x%08lX, listed = ", mycrc);
+ printf("local = 0x%08" PRIX32 ", listed = ", mycrc);
fflush(stdout);
sfvfile = fopen(sfvname, "rt");
@@ -675,7 +675,7 @@ main(int argc, char *argv[])
mycrc = GetFileCRC(dp->d_name);
- printf("local = 0x%08lX ... ", mycrc);
+ printf("local = 0x%08" PRIX32 " ... ", mycrc);
if (mycrc == sfvTable[cnt].crc) {
printf("OK\n");
|