version 1.4, 2011/04/28 20:28:20
|
version 1.7, 2012/08/29 09:00:44
|
Line 12 terms:
|
Line 12 terms:
|
All of the documentation and software included in the ELWIX and AITNET |
All of the documentation and software included in the ELWIX and AITNET |
Releases is copyrighted by ELWIX - Sofia/Bulgaria <info@elwix.org> |
Releases is copyrighted by ELWIX - Sofia/Bulgaria <info@elwix.org> |
|
|
Copyright 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 | Copyright 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 |
by Michael Pounov <misho@elwix.org>. All rights reserved. |
by Michael Pounov <misho@elwix.org>. All rights reserved. |
|
|
Redistribution and use in source and binary forms, with or without |
Redistribution and use in source and binary forms, with or without |
Line 47 SUCH DAMAGE.
|
Line 47 SUCH DAMAGE.
|
#define __DEFS_H |
#define __DEFS_H |
|
|
|
|
#define MAX_STR 255 | #ifndef STRSIZ |
| #define STRSIZ 256 |
| #endif |
|
|
#define MAX_FLETCHER16_DIGEST 21 |
#define MAX_FLETCHER16_DIGEST 21 |
#define MAX_FLETCHER_DIGEST 360 |
#define MAX_FLETCHER_DIGEST 360 |
#define MAX_ADLER_DIGEST 5552 |
#define MAX_ADLER_DIGEST 5552 |
|
|
|
#define POLY_CRC32 0xC0A0A0D5 |
|
#define INIT_BERNSTEIN 0x1505 |
|
#define INIT_FNV1 0x811c9dc5 |
|
#define POLY_FNV1 0x1000193 |
|
#define INIT_JENKINS32 0xDEADBEEF |
|
|
inline void crcSetErr(int eno, char *estr, ...); | #define ROT32(x, k) (((x) << (k)) | ((x) >> (32 - (k)))) |
| #define MIX32(a, b, c) \ |
| do { \ |
| a -= c; a ^= ROT32(c, 4); c += b; \ |
| b -= a; b ^= ROT32(a, 6); a += c; \ |
| c -= b; c ^= ROT32(b, 8); b += a; \ |
| a -= c; a ^= ROT32(c, 16); c += b; \ |
| b -= a; b ^= ROT32(a, 19); a += c; \ |
| c -= b; c ^= ROT32(b, 4); b += a; \ |
| } while (0) |
| #define FINAL32(a, b, c) \ |
| do { \ |
| c ^= b; c -= ROT32(b, 14); \ |
| a ^= c; a -= ROT32(c, 11); \ |
| b ^= a; b -= ROT32(a, 25); \ |
| c ^= b; c -= ROT32(b, 16); \ |
| a ^= c; a -= ROT32(c, 4); \ |
| b ^= a; b -= ROT32(a, 14); \ |
| c ^= b; c -= ROT32(b, 24); \ |
| } while (0) |
| |
| |
| inline void crc_SetErr(int eno, char *estr, ...); |
|
|
|
|
extern const crcPoly_t crc_Poly[]; |
extern const crcPoly_t crc_Poly[]; |