ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/Convert-UUlib/uulib/crc32.h
Revision: 1.2
Committed: Sun Apr 18 14:48:53 2004 UTC (20 years, 1 month ago) by root
Content type: text/plain
Branch: MAIN
CVS Tags: rel-1_11, rel-1_10, rel-1_12, rel-0_7, rel-1_06, rel-1_04, rel-1_05, rel-1_08, rel-1_09
Changes since 1.1: +2 -0 lines
Log Message:
*** empty log message ***

File Contents

# Content
1 #ifndef __CRC32_H__
2 #define __CRC32_H__
3
4 #ifndef _ANSI_ARGS_
5 #ifdef PROTOTYPES
6 #define _ANSI_ARGS_(c) c
7 #else
8 #define _ANSI_ARGS_(c) ()
9 #endif
10 #endif
11
12 #ifdef __cplusplus
13 extern "C" {
14 #endif
15
16 typedef unsigned long crc32_t;
17 #define Z_NULL 0
18
19 #define crc32 uulib_crc32
20
21 crc32_t crc32 _ANSI_ARGS_((crc32_t crc, const unsigned char *buf, unsigned int len));
22 /*
23 Update a running crc with the bytes buf[0..len-1] and return the updated
24 crc. If buf is NULL, this function returns the required initial value
25 for the crc. Pre- and post-conditioning (one's complement) is performed
26 within this function so it shouldn't be done by the application.
27 Usage example:
28
29 uLong crc = crc32(0L, Z_NULL, 0);
30
31 while (read_buffer(buffer, length) != EOF) {
32 crc = crc32(crc, buffer, length);
33 }
34 if (crc != original_crc) error();
35 */
36
37 #ifdef __cplusplus
38 }
39 #endif
40 #endif