Rev 4558 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 4558 | Rev 4708 | ||
---|---|---|---|
Line 41... | Line 41... | ||
41 | #define CRC_DIVIDER_BE 0x04C11DB7 |
41 | #define CRC_DIVIDER_BE 0x04C11DB7 |
42 | 42 | ||
43 | #define CRC_DIVIDER_LE 0xEDB88320 |
43 | #define CRC_DIVIDER_LE 0xEDB88320 |
44 | 44 | ||
45 | uint32_t compute_crc32_le( uint32_t seed, uint8_t * data, size_t length ){ |
45 | uint32_t compute_crc32_le( uint32_t seed, uint8_t * data, size_t length ){ |
46 | int index; |
46 | size_t index; |
47 | 47 | ||
48 | while( length >= 8 ){ |
48 | while( length >= 8 ){ |
49 | seed ^= ( * data ); |
49 | seed ^= ( * data ); |
50 | for( index = 0; index < 8; ++ index ){ |
50 | for( index = 0; index < 8; ++ index ){ |
51 | if( seed & 1 ){ |
51 | if( seed & 1 ){ |
Line 70... | Line 70... | ||
70 | } |
70 | } |
71 | return seed; |
71 | return seed; |
72 | } |
72 | } |
73 | 73 | ||
74 | uint32_t compute_crc32_be( uint32_t seed, uint8_t * data, size_t length ){ |
74 | uint32_t compute_crc32_be( uint32_t seed, uint8_t * data, size_t length ){ |
75 | int index; |
75 | size_t index; |
76 | 76 | ||
77 | while( length >= 8 ){ |
77 | while( length >= 8 ){ |
78 | seed ^= ( * data ) << 24; |
78 | seed ^= ( * data ) << 24; |
79 | for( index = 0; index < 8; ++ index ){ |
79 | for( index = 0; index < 8; ++ index ){ |
80 | if( seed & 0x80000000 ){ |
80 | if( seed & 0x80000000 ){ |