diff --git a/src/hash/crc32.c b/src/hash/crc32.c
index 599dd146b9d8c921362c0b91549e9517863b3ddb..c4d9335758e2762404db2fe44eeab2109532106f 100644
--- a/src/hash/crc32.c
+++ b/src/hash/crc32.c
@@ -78,7 +78,7 @@ int32_t crc32tbl[]={	/* CRC polynomial 0xedb88320 */
 /* Pass len of 0 to auto-determine ASCIIZ string length						*/
 /* or non-zero for arbitrary binary data									*/
 /****************************************************************************/
-uint32_t crc32i(uint32_t crc, char *buf, uint32_t len)
+uint32_t crc32i(uint32_t crc, char *buf, unsigned long len)
 {
 	uint32_t l;
 
@@ -89,7 +89,7 @@ uint32_t crc32i(uint32_t crc, char *buf, uint32_t len)
 	return(~crc);
 }
 
-uint32_t fcrc32(FILE* fp, uint32_t len)
+uint32_t fcrc32(FILE* fp, unsigned long len)
 {
 	int	ch;
 	uint32_t l,crc=0xffffffff;
diff --git a/src/hash/crc32.h b/src/hash/crc32.h
index 083a1193e7d192975afa5145d434eb4be80a6e19..813899424b18cf0052152d922e79a9105a850277 100644
--- a/src/hash/crc32.h
+++ b/src/hash/crc32.h
@@ -47,8 +47,8 @@ extern "C" {
 
 extern int32_t crc32tbl[];
 
-uint32_t crc32i(uint32_t crc, char* buf, uint32_t len);
-uint32_t fcrc32(FILE* fp, uint32_t len);
+uint32_t crc32i(uint32_t crc, char* buf, unsigned long len);
+uint32_t fcrc32(FILE* fp, unsigned long len);
 
 #ifdef __cplusplus
 }