Annotation of libaitcrc/inc/aitcrc.h, revision 1.1.1.1

1.1       misho       1: /*************************************************************************
                      2: * (C) 2008 AITNET ltd - Sofia/Bulgaria - <misho@aitbg.com>
                      3: *  by Michael Pounov <misho@openbsd-bg.org>
                      4: *
                      5: * $Author: misho $
                      6: * $Id: global.h,v 1.1.1.1.2.2 2008/09/30 20:00:26 misho Exp $
                      7: *
                      8: *************************************************************************/
                      9: #ifndef __AITCRC_H
                     10: #define __AITCRC_H
                     11: 
                     12: 
                     13: #define REVOPTS_REVERTBYTE     1
                     14: #define REVOPTS_REVERTCRC      2
                     15: 
                     16: 
                     17: struct tagCRCPoly {
                     18:        u_char  poly_bits;
                     19:        u_long  poly_num;
                     20:        char    poly_name[19];
                     21: };     // size 24bytes
                     22: typedef struct tagCRCPoly crcPoly_t;
                     23: 
                     24: 
                     25: inline int crc_GetErrno();
                     26: inline const char *crc_GetError();
                     27: 
                     28: inline u_long crcReflect(u_long crcNum, u_char crcBits);
                     29: inline u_long crcCalc(u_char * __restrict psBuf, u_int bufLen, u_char crcBits, u_char RevOpts, u_long initCRC, u_long xorCRC);
                     30: 
                     31: inline u_short crcIP(u_short * __restrict nBuf, int bufLen);
                     32: inline u_long crcFletcher(u_short * __restrict nBuf, int bufLen);
                     33: inline u_long crcAdler(u_char * __restrict psBuf, int bufLen);
                     34: 
                     35: #define crcEther(psBuf, bufLen)                crcCalc((psBuf), (bufLen), 32, 3, 0xFFFFFFFF, 0xFFFFFFFF)
                     36: 
                     37: 
                     38: #endif

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>